64-разрядная кодировка

Тема в разделе "WASM.X64", создана пользователем Mikl___, 8 мар 2017.

  1. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.707
    примеркодировкарасшифровка
    INC RAX48 FF C0[math]\overbrace{1000\; ZXXY}^{REX\; prefix} \overbrace{\underbrace{1111\;111}_{Opcode_1}W \underbrace{11}_{Mod}\underbrace{00\; 0}_{Opcode_2}RRR}^{Opcode\; INC\; Reg}[/math]
    X - безразлично для данной инструкции, но для других инструкций расширяет поле ModR/M и поле index SIB
    Y=0 "старые" регистры от RAX до RDI (R0-R7)
    Y=1 "новые" регистры от R8 до R15
    Z=0 16/32-разряда (размер операнда по-умолчанию)
    Z=1 64-разряда
    если W=0 тогда размер операнда байт и значение в Z - безразлично
    если W=1 тогда размер операнда 16-/32-/64-разряда
    YRRRназвание регистраYRRRназвание регистра
    0000AL/AX/EAX/RAX1000R8B/R8W/R8D/R8
    0001CL/CX/ECX/RCX1001R9B/R9W/R9D/R9
    0010DL/DX/EDX/RDX1010R10B/R10W/R10D/R10
    0011BL/BX/EBX/RBX1011R11B/R11W/R11D/R11
    0100AH/SPL/SP/ESP/RSP1100R12B/R12W/R12W/R12
    0101CH/BPL/BP/EBP/RBP1101R13B/R13W/R13D/R13
    0110DH/SIL/SI/ESI/RSI1110R14B/R14W/R14D/R14
    0111BH/DIL/DI/EDI/RDI1111R15B/R15W/R15D/R15
    4A FF C0
    4C FF C0
    4E FF C0
    INC R849 FF C0/66 49 FF C0
    4B FF C0/66 4B FF C0
    4D FF C0/66 4D FF C0
    4F FF C0/66 4F FF C0
    INC EAXFF C0
    INC ECXFF C1
    INC EDXFF C2
    INC EBXFF C3
    INC ESPFF C4
    INC EBPFF C5
    INC ESIFF C6
    INC EDIFF C7
    INC R8D41 FF C0
    INC EAX40 FF C0
    INC AX66 FF C0
    INC AX66 40 FF C0
    INC R8W66 41 FF C0
    INC R8B41 FE C0/49 FE C0
    INC ALFEC0/40FEC0/48FEC0
    66FEC0/6640FEC0/6648FEC0
    INC CLFE C1/42 FE C1/4AFEC1
    INC DLFE C2/42 FE C2/4AFEC2
    INC BLFE C3/42 FE C3/4AFEC3
    INC SPL42 FE C4/4AFEC4
    INC BPL42 FE C5/4AFEC5
    INC SIL42 FE C6/4AFEC6
    INC DIL42 FE C7/4AFEC7
    INC AHFE C4
    INC CHFE C5
    INC DHFE C6
    INC BHFE C7
     
    aa_dav и rococo795 нравится это.
  2. xdf

    xdf New Member

    Публикаций:
    0
    Регистрация:
    14 июл 2006
    Сообщения:
    21
    нид хелп

    0x0F,0xC7,0x19
    0x0F,0xC7,0x29

    встречается в SwapContext х64 ядра 10 винды https://pastebin.com/ETq9LC1L
     
    rococo795 нравится это.
  3. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.775
    xdf,

    В IA это невалид инструкция судя по таблице опкодов. 0F C7 MRM: 00 001 R - cmpxchg8b с данным опкодом только.
    Хотя есть xsaves/xrstors, кодируются как у вас. Странно что не вынесены в таблицу.
    0F С7 /5(MRM: 00 101 R) XSAVES
    0F C7 /3(MRM: 00 011 R) XRSTORS

    https://software.intel.com/sites/default/files/managed/39/c5/325462-sdm-vol-1-2abcd-3abcd.pdf

    5-620
     
    Последнее редактирование: 21 май 2017
    Mikl___ и rococo795 нравится это.