mirror of
https://github.com/bitdefender/bddisasm.git
synced 2024-11-18 05:28:09 +00:00
d61a6fa5dd
* Fixed FXSAVE64, PUSHAD and POPAD emulation - when explicit mnemonics were added for them, emulation support was not added, thus causing emulation to stop when encountering one of these.
448 lines
48 KiB
Plaintext
448 lines
48 KiB
Plaintext
# Mnemonic Explicit Implicit Encoding s:set, t:type, c:class, a:flags, p:prefixes, w:operands access, f:flags access, i:cpuid, m:valid cpu modes
|
|
#------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
# 0x00 - 0x0F
|
|
ADD Eb,Gb Fv [ 0x00 /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
|
|
ADD Ev,Gv Fv [ 0x01 /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
|
|
ADD Gb,Eb Fv [ 0x02 /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH
|
|
ADD Gv,Ev Fv [ 0x03 /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH
|
|
ADD AL,Ib Fv [ 0x04 ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH
|
|
ADD rAX,Iz Fv [ 0x05 iz] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1
|
|
PUSH ES Kv [ 0x06] s:I86, t:PUSH, w:R|W, m:NO64|NOSGX
|
|
POP ES Kv [ 0x07] s:I86, t:POP, w:W|R, m:NO64|NOSGX
|
|
OR Eb,Gb Fv [ 0x08 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
OR Ev,Gv Fv [ 0x09 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
OR Gb,Eb Fv [ 0x0A /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
OR Gv,Ev Fv [ 0x0B /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
OR AL,Ib Fv [ 0x0C ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
OR rAX,Iz Fv [ 0x0D iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1
|
|
PUSH CS Kv [ 0x0E] s:I86, t:PUSH, w:R|R, m:NO64|NOSGX
|
|
|
|
# 0x10 - 0x1F
|
|
ADC Eb,Gb Fv [ 0x10 /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, p:HLE|LOCK
|
|
ADC Ev,Gv Fv [ 0x11 /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, p:HLE|LOCK
|
|
ADC Gb,Eb Fv [ 0x12 /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC
|
|
ADC Gv,Ev Fv [ 0x13 /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC
|
|
ADC AL,Ib Fv [ 0x14 ib] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC
|
|
ADC rAX,Iz Fv [ 0x15 iz] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1
|
|
PUSH SS Kv [ 0x16] s:I86, t:PUSH, w:R|W, m:NO64|NOSGX
|
|
POP SS Kv [ 0x17] s:I86, t:POP, w:W|R, m:NO64|NOSGX
|
|
SBB Eb,Gb Fv [ 0x18 /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, p:HLE|LOCK
|
|
SBB Ev,Gv Fv [ 0x19 /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, p:HLE|LOCK
|
|
SBB Gb,Eb Fv [ 0x1A /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC
|
|
SBB Gv,Ev Fv [ 0x1B /r] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC
|
|
SBB AL,Ib Fv [ 0x1C ib] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC
|
|
SBB rAX,Iz Fv [ 0x1D iz] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1
|
|
PUSH DS Kv [ 0x1E] s:I86, t:PUSH, w:R|W, m:NO64|NOSGX
|
|
POP DS Kv [ 0x1F] s:I86, t:POP, w:W|R, m:NO64|NOSGX
|
|
|
|
# 0x20 - 0x2F
|
|
AND Eb,Gb Fv [ 0x20 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
AND Ev,Gv Fv [ 0x21 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
AND Gb,Eb Fv [ 0x22 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
AND Gv,Ev Fv [ 0x23 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
AND AL,Ib Fv [ 0x24 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
AND rAX,Iz Fv [ 0x25 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1
|
|
es nil nil [ 0x26] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
DAA nil AL,Fv [ 0x27] s:I86, t:DECIMAL, w:RW|RW, f:DAAS, m:NO64
|
|
SUB Eb,Gb Fv [ 0x28 /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
|
|
SUB Ev,Gv Fv [ 0x29 /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
|
|
SUB Gb,Eb Fv [ 0x2A /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH
|
|
SUB Gv,Ev Fv [ 0x2B /r] s:I86, t:ARITH, w:RW|R|W, f:ARITH
|
|
SUB AL,Ib Fv [ 0x2C ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH
|
|
SUB rAX,Iz Fv [ 0x2D iz] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1
|
|
cs nil nil [ 0x2E] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
BHNT nil nil [ 0x2E] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
DAS nil AL,Fv [ 0x2F] s:I86, t:DECIMAL, w:RW|RW, f:DAAS|SF=m, m:NO64
|
|
|
|
# 0x30 - 0x3F
|
|
XOR Eb,Gb Fv [ 0x30 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
XOR Ev,Gv Fv [ 0x31 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
XOR Gb,Eb Fv [ 0x32 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
XOR Gv,Ev Fv [ 0x33 /r] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
XOR AL,Ib Fv [ 0x34 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC
|
|
XOR rAX,Iz Fv [ 0x35 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1
|
|
ss nil nil [ 0x36] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
AAA nil AH,AL,Fv [ 0x37] s:I86, t:DECIMAL, w:RW|RW|RW, f:AAAS, m:NO64
|
|
CMP Eb,Gb Fv [ 0x38 /r] s:I86, t:ARITH, w:R|R|W, f:ARITH
|
|
CMP Ev,Gv Fv [ 0x39 /r] s:I86, t:ARITH, w:R|R|W, f:ARITH
|
|
CMP Gb,Eb Fv [ 0x3A /r] s:I86, t:ARITH, w:R|R|W, f:ARITH
|
|
CMP Gv,Ev Fv [ 0x3B /r] s:I86, t:ARITH, w:R|R|W, f:ARITH
|
|
CMP AL,Ib Fv [ 0x3C ib] s:I86, t:ARITH, w:R|R|W, f:ARITH
|
|
CMP rAX,Iz Fv [ 0x3D iz] s:I86, t:ARITH, w:R|R|W, f:ARITH, a:OP2SEXO1
|
|
ds nil nil [ 0x3E] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
BHT nil nil [ 0x3E] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
AAS nil AH,AL,Fv [ 0x3F] s:I86, t:DECIMAL, w:RW|RW|RW, f:AAAS, m:NO64
|
|
|
|
# 0x40 - 0x4F
|
|
INC Zv Fv [ 0x40] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x41] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x42] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x43] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x44] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x45] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x46] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
INC Zv Fv [ 0x47] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x48] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x49] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x4A] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x4B] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x4C] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x4D] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x4E] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
DEC Zv Fv [ 0x4F] s:I86, t:ARITH, w:RW|W, f:INCDEC, m:NO64
|
|
|
|
# 0x50 - 0x5F
|
|
PUSH Zv Kv [ 0x50] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x51] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x52] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x53] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x54] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x55] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x56] s:I86, t:PUSH, w:R|W, a:D64
|
|
PUSH Zv Kv [ 0x57] s:I86, t:PUSH, w:R|W, a:D64
|
|
POP Zv Kv [ 0x58] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x59] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x5A] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x5B] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x5C] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x5D] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x5E] s:I86, t:POP, w:W|R, a:D64
|
|
POP Zv Kv [ 0x5F] s:I86, t:POP, w:W|R, a:D64
|
|
|
|
# 0x60 - 0x6F
|
|
PUSHA nil BANK,Kv8 [ ds16 0x60] s:I386, t:PUSH, w:R|W, m:NO64
|
|
PUSHAD nil BANK,Kv8 [ ds32 0x60] s:I386, t:PUSH, w:R|W, m:NO64
|
|
POPA nil BANK,Kv8 [ ds16 0x61] s:I386, t:POP, w:W|R, m:NO64
|
|
POPAD nil BANK,Kv8 [ ds32 0x61] s:I386, t:POP, w:W|R, m:NO64
|
|
BOUND Gv,Ma nil [ 0x62 /r:mem] s:I186, t:INTERRUPT, w:R|R, m:NO64
|
|
ARPL Ew,Gw Fv [ 0x63 /r] s:I286PROT, t:SYSTEM, w:RW|R|W, f:ZF=m, m:NOREAL|NO64
|
|
MOVSXD Gv,Ez nil [ o64 0x63 /r] s:LONGMODE, t:DATAXFER, w:W|R, m:O64
|
|
fs nil nil [ 0x64] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
BHALT nil nil [ 0x64] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
gs nil nil [ 0x65] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
size nil nil [ 0x66] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
addr nil nil [ 0x67] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
PUSH Iz Kv [ 0x68 iz] s:I86, t:PUSH, w:R|W, a:D64|OP1SEXDW
|
|
IMUL Gv,Ev,Iz Fv [ 0x69 /r iz] s:I86, t:ARITH, w:W|R|R|W, f:MUL, a:OP3SEXO1
|
|
PUSH Ib Kv [ 0x6A ib] s:I86, t:PUSH, w:R|W, a:D64|OP1SEXDW
|
|
IMUL Gv,Ev,Ib Fv [ 0x6B /r ib] s:I86, t:ARITH, w:W|R|R|W, f:MUL, a:OP3SEXO1
|
|
INSB Yb,DX aDI,Fv [ 0x6C] s:I86, t:IOSTRINGOP, c:INS, w:W|R|RW|R, f:IOS, a:OP1DEF|OP2DEF, p:REP, m:NOSGX
|
|
INSB Yb,DX aCX,aDI,Fv [ rep 0x6C] s:I86, t:IOSTRINGOP, c:INS, w:CW|R|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF, p:REP, m:NOSGX
|
|
INSW Yz,DX aDI,Fv [ ds16 0x6D] s:I86, t:IOSTRINGOP, c:INS, w:W|R|RW|R, f:IOS, a:OP1DEF|OP2DEF, p:REP, m:NOSGX
|
|
INSW Yz,DX aCX,aDI,Fv [ rep ds16 0x6D] s:I86, t:IOSTRINGOP, c:INS, w:CW|R|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF, p:REP, m:NOSGX
|
|
INSD Yz,DX aDI,Fv [ 0x6D] s:I86, t:IOSTRINGOP, c:INS, w:W|R|RW|R, f:IOS, a:OP1DEF|OP2DEF, p:REP, m:NOSGX
|
|
INSD Yz,DX aCX,aDI,Fv [ rep 0x6D] s:I86, t:IOSTRINGOP, c:INS, w:CW|R|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF, p:REP, m:NOSGX
|
|
OUTSB DX,Xb aSI,Fv [ 0x6E] s:I86, t:IOSTRINGOP, c:OUTS, w:R|R|RW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
|
|
OUTSB DX,Xb aCX,aSI,Fv [ rep 0x6E] s:I86, t:IOSTRINGOP, c:OUTS, w:R|CR|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
|
|
OUTSW DX,Xz aSI,Fv [ ds16 0x6F] s:I86, t:IOSTRINGOP, c:OUTS, w:R|R|RW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
|
|
OUTSW DX,Xz aCX,aSI,Fv [ rep ds16 0x6F] s:I86, t:IOSTRINGOP, c:OUTS, w:R|CR|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
|
|
OUTSD DX,Xz aSI,Fv [ 0x6F] s:I86, t:IOSTRINGOP, c:OUTS, w:R|R|RW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
|
|
OUTSD DX,Xz aCX,aSI,Fv [ rep 0x6F] s:I86, t:IOSTRINGOP, c:OUTS, w:R|CR|RCW|RCW|R, f:IOS, a:OP1DEF|OP2DEF|SERIAL, p:REP, m:NOSGX
|
|
|
|
# 0x70 - 0x7F
|
|
JO Jb rIP,Fv [ 0x70 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CO, a:F64|COND, p:BND|BH
|
|
JNO Jb rIP,Fv [ 0x71 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNO, a:F64|COND, p:BND|BH
|
|
JC Jb rIP,Fv [ 0x72 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CC, a:F64|COND, p:BND|BH
|
|
JNC Jb rIP,Fv [ 0x73 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNC, a:F64|COND, p:BND|BH
|
|
JZ Jb rIP,Fv [ 0x74 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CZ, a:F64|COND, p:BND|BH
|
|
JNZ Jb rIP,Fv [ 0x75 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNZ, a:F64|COND, p:BND|BH
|
|
JBE Jb rIP,Fv [ 0x76 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CBE, a:F64|COND, p:BND|BH
|
|
JNBE Jb rIP,Fv [ 0x77 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNBE, a:F64|COND, p:BND|BH
|
|
JS Jb rIP,Fv [ 0x78 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CS, a:F64|COND, p:BND|BH
|
|
JNS Jb rIP,Fv [ 0x79 cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNS, a:F64|COND, p:BND|BH
|
|
JP Jb rIP,Fv [ 0x7A cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CP, a:F64|COND, p:BND|BH
|
|
JNP Jb rIP,Fv [ 0x7B cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNP, a:F64|COND, p:BND|BH
|
|
JL Jb rIP,Fv [ 0x7C cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CL, a:F64|COND, p:BND|BH
|
|
JNL Jb rIP,Fv [ 0x7D cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNL, a:F64|COND, p:BND|BH
|
|
JLE Jb rIP,Fv [ 0x7E cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CLE, a:F64|COND, p:BND|BH
|
|
JNLE Jb rIP,Fv [ 0x7F cb] s:I86, t:COND_BR, c:Jcc, w:R|RW|R, f:CNLE, a:F64|COND, p:BND|BH
|
|
|
|
# 0x80 - 0x8F
|
|
ADD Eb,Ib Fv [ 0x80 /0 ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
|
|
OR Eb,Ib Fv [ 0x80 /1 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
ADC Eb,Ib Fv [ 0x80 /2 ib] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, p:HLE|LOCK
|
|
SBB Eb,Ib Fv [ 0x80 /3 ib] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, p:HLE|LOCK
|
|
AND Eb,Ib Fv [ 0x80 /4 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
SUB Eb,Ib Fv [ 0x80 /5 ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH, p:HLE|LOCK
|
|
XOR Eb,Ib Fv [ 0x80 /6 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, p:HLE|LOCK
|
|
CMP Eb,Ib Fv [ 0x80 /7 ib] s:I86, t:ARITH, w:R|R|W, f:ARITH
|
|
|
|
ADD Ev,Iz Fv [ 0x81 /0 iz] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1, p:HLE|LOCK
|
|
OR Ev,Iz Fv [ 0x81 /1 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, p:HLE|LOCK
|
|
ADC Ev,Iz Fv [ 0x81 /2 iz] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1, p:HLE|LOCK
|
|
SBB Ev,Iz Fv [ 0x81 /3 iz] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1, p:HLE|LOCK
|
|
AND Ev,Iz Fv [ 0x81 /4 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, p:HLE|LOCK
|
|
SUB Ev,Iz Fv [ 0x81 /5 iz] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1, p:HLE|LOCK
|
|
XOR Ev,Iz Fv [ 0x81 /6 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, p:HLE|LOCK
|
|
CMP Ev,Iz Fv [ 0x81 /7 iz] s:I86, t:ARITH, w:R|R|W, f:ARITH, a:OP2SEXO1
|
|
|
|
ADD Eb,Ib Fv [ 0x82 /0 iz] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
OR Eb,Ib Fv [ 0x82 /1 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
ADC Eb,Ib Fv [ 0x82 /2 iz] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
SBB Eb,Ib Fv [ 0x82 /3 iz] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
AND Eb,Ib Fv [ 0x82 /4 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
SUB Eb,Ib Fv [ 0x82 /5 iz] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
XOR Eb,Ib Fv [ 0x82 /6 iz] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, m:NO64, p:HLE|LOCK
|
|
CMP Eb,Ib Fv [ 0x82 /7 iz] s:I86, t:ARITH, w:R|R|W, f:ARITH, a:OP2SEXO1, m:NO64
|
|
|
|
ADD Ev,Ib Fv [ 0x83 /0 ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1, p:HLE|LOCK
|
|
OR Ev,Ib Fv [ 0x83 /1 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, p:HLE|LOCK
|
|
ADC Ev,Ib Fv [ 0x83 /2 ib] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1, p:HLE|LOCK
|
|
SBB Ev,Ib Fv [ 0x83 /3 ib] s:I86, t:ARITH, w:RW|R|RW, f:ARITHC, a:OP2SEXO1, p:HLE|LOCK
|
|
AND Ev,Ib Fv [ 0x83 /4 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, p:HLE|LOCK
|
|
SUB Ev,Ib Fv [ 0x83 /5 ib] s:I86, t:ARITH, w:RW|R|W, f:ARITH, a:OP2SEXO1, p:HLE|LOCK
|
|
XOR Ev,Ib Fv [ 0x83 /6 ib] s:I86, t:LOGIC, w:RW|R|W, f:LOGIC, a:OP2SEXO1, p:HLE|LOCK
|
|
CMP Ev,Ib Fv [ 0x83 /7 ib] s:I86, t:ARITH, w:R|R|W, f:ARITH, a:OP2SEXO1
|
|
|
|
TEST Eb,Gb Fv [ 0x84 /r] s:I86, t:LOGIC, w:R|R|W, f:LOGIC
|
|
TEST Ev,Gv Fv [ 0x85 /r] s:I86, t:LOGIC, w:R|R|W, f:LOGIC
|
|
XCHG Eb,Gb nil [ 0x86 /r] s:I86, t:DATAXFER, w:RW|RW, p:HLE|LOCK|HLEWOL
|
|
XCHG Ev,Gv nil [ 0x87 /r] s:I86, t:DATAXFER, w:RW|RW, p:HLE|LOCK|HLEWOL
|
|
MOV Eb,Gb nil [ 0x88 /r] s:I86, t:DATAXFER, w:W|R, p:XRELEASE|HLEWOL
|
|
MOV Ev,Gv nil [ 0x89 /r] s:I86, t:DATAXFER, w:W|R, p:XRELEASE|HLEWOL
|
|
MOV Gb,Eb nil [ 0x8A /r] s:I86, t:DATAXFER, w:W|R
|
|
MOV Gv,Ev nil [ 0x8B /r] s:I86, t:DATAXFER, w:W|R
|
|
MOV Mw,Sw nil [ 0x8C /r:mem] s:I86, t:DATAXFER, w:W|R
|
|
MOV Rv,Sw nil [ 0x8C /r:reg] s:I86, t:DATAXFER, w:W|R
|
|
LEA Gv,M0 nil [ 0x8D /r:mem] s:I86, t:MISC, w:W|N, a:AG
|
|
MOV Sw,Mw nil [ 0x8E /r:mem] s:I86, t:DATAXFER, w:W|R
|
|
MOV Sw,Rv nil [ 0x8E /r:reg] s:I86, t:DATAXFER, w:W|R
|
|
POP Ev Kv [ 0x8F /0] s:I86, t:POP, w:W|R, a:D64
|
|
|
|
# 0x90 - 0x9F
|
|
NOP nil nil [ 0x90] s:I86, t:NOP,
|
|
PAUSE nil nil [ a0xF3 0x90] s:PAUSE, t:MISC, m:NOTSX
|
|
XCHG rAX,Zv nil [ rex 0x90] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x91] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x92] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x93] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x94] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x95] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x96] s:I86, t:DATAXFER, w:RW|RW
|
|
XCHG rAX,Zv nil [ 0x97] s:I86, t:DATAXFER, w:RW|RW
|
|
CBW nil AX,AL [ ds16 0x98] s:I386, t:CONVERT, w:W|R
|
|
CWDE nil EAX,AX [ ds32 0x98] s:I386, t:CONVERT, w:W|R
|
|
CDQE nil RAX,EAX [ ds64 0x98] s:I386, t:CONVERT, w:W|R
|
|
CWD nil DX,AX [ ds16 0x99] s:I386, t:CONVERT, w:W|R
|
|
CDQ nil EDX,EAX [ ds32 0x99] s:I386, t:CONVERT, w:W|R
|
|
CQO nil RDX,RAX [ ds64 0x99] s:I386, t:CONVERT, w:W|R
|
|
CALLF Ap CS,rIP,Kv2,SHS2 [ 0x9A cp] s:I86, t:CALL, c:CALLFD, w:R|RW|W|W|W, m:NO64|NOSGX
|
|
WAIT nil nil [ 0x9B] s:X87, t:X87_ALU
|
|
PUSHFW Fv Kv [ ds16 0x9C] s:I86, t:PUSH, c:PUSHF, w:R|W, a:D64
|
|
PUSHFD Fv Kv [ ds32 0x9C] s:I86, t:PUSH, c:PUSHF, w:R|W, a:D64
|
|
PUSHFQ Fv Kv [ dds64 0x9C] s:I86, t:PUSH, c:PUSHF, w:R|W, a:D64
|
|
POPFW Fv Kv [ ds16 0x9D] s:I86, t:POP, c:POPF, w:W|R , a:D64
|
|
POPFD Fv Kv [ ds32 0x9D] s:I86, t:POP, c:POPF, w:W|R , a:D64
|
|
POPFQ Fv Kv [ dds64 0x9D] s:I86, t:POP, c:POPF, w:W|R , a:D64
|
|
SAHF nil AH,Fv [ 0x9E] s:I86, t:FLAGOP, w:R|W, f:CF=m|PF=m|AF=m|ZF=m|SF=m
|
|
LAHF nil AH,Fv [ 0x9F] s:I86, t:FLAGOP, w:W|R, f:CF=t|PF=t|AF=t|ZF=t|SF=t
|
|
|
|
# 0xA0 - 0xAF
|
|
MOV AL,Ob nil [ 0xA0] s:I86, t:DATAXFER, w:W|R
|
|
MOV rAX,Ov nil [ 0xA1] s:I86, t:DATAXFER, w:W|R
|
|
MOV Ob,AL nil [ 0xA2] s:I86, t:DATAXFER, w:W|R
|
|
MOV Ov,rAX nil [ 0xA3] s:I86, t:DATAXFER, w:W|R
|
|
|
|
MOVSB Yb,Xb aSI,aDI,Fv [ 0xA4] s:I86, t:STRINGOP, c:MOVS, w:W|R|RW|RW|R, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSB Yb,Xb aCX,aSI,aDI,Fv [ rep 0xA4] s:I86, t:STRINGOP, c:MOVS, w:CW|CR|RCW|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSW Yv,Xv aSI,aDI,Fv [ ds16 0xA5] s:I86, t:STRINGOP, c:MOVS, w:W|R|RW|RW|R, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSW Yv,Xv aCX,aSI,aDI,Fv [ rep ds16 0xA5] s:I86, t:STRINGOP, c:MOVS, w:CW|CR|RCW|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSD Yv,Xv aSI,aDI,Fv [ ds32 0xA5] s:I86, t:STRINGOP, c:MOVS, w:W|R|RW|RW|R, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSD Yv,Xv aCX,aSI,aDI,Fv [ rep ds32 0xA5] s:I86, t:STRINGOP, c:MOVS, w:CW|CR|RCW|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSQ Yv,Xv aSI,aDI,Fv [ ds64 0xA5] s:I86, t:STRINGOP, c:MOVS, w:W|R|RW|RW|R, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
MOVSQ Yv,Xv aCX,aSI,aDI,Fv [ rep ds64 0xA5] s:I86, t:STRINGOP, c:MOVS, w:CW|CR|RCW|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
|
|
CMPSB Xb,Yb aSI,aDI,Fv [ 0xA6] s:I86, t:STRINGOP, c:CMPS, w:R|R|RW|RW|R, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSB Xb,Yb aCX,aSI,aDI,Fv [ rep 0xA6] s:I86, t:STRINGOP, c:CMPS, w:CR|CR|RCW|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSW Xv,Yv aSI,aDI,Fv [ ds16 0xA7] s:I86, t:STRINGOP, c:CMPS, w:R|R|RW|RW|R, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSW Xv,Yv aCX,aSI,aDI,Fv [ rep ds16 0xA7] s:I86, t:STRINGOP, c:CMPS, w:CR|CR|RCW|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSD Xv,Yv aSI,aDI,Fv [ ds32 0xA7] s:I86, t:STRINGOP, c:CMPS, w:R|R|RW|RW|R, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSD Xv,Yv aCX,aSI,aDI,Fv [ rep ds32 0xA7] s:I86, t:STRINGOP, c:CMPS, w:CR|CR|RCW|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSQ Xv,Yv aSI,aDI,Fv [ ds64 0xA7] s:I86, t:STRINGOP, c:CMPS, w:R|R|RW|RW|R, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
CMPSQ Xv,Yv aCX,aSI,aDI,Fv [ rep ds64 0xA7] s:I86, t:STRINGOP, c:CMPS, w:CR|CR|RCW|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
|
|
TEST AL,Ib Fv [ 0xA8 ib] s:I86, t:LOGIC, w:R|R|W, f:LOGIC
|
|
TEST rAX,Iz Fv [ 0xA9 iz] s:I86, t:LOGIC, w:R|R|W, f:LOGIC, a:OP2SEXO1
|
|
|
|
STOSB Yb,AL aDI,Fv [ 0xAA] s:I86, t:STRINGOP, c:STOS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSB Yb,AL aCX,aDI,Fv [ rep 0xAA] s:I86, t:STRINGOP, c:STOS, w:CW|R|RCW|RCW|RW, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSW Yv,AX aDI,Fv [ ds16 0xAB] s:I86, t:STRINGOP, c:STOS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSW Yv,AX aCX,aDI,Fv [ rep ds16 0xAB] s:I86, t:STRINGOP, c:STOS, w:CW|R|RCW|RCW|RW, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSD Yv,EAX aDI,Fv [ ds32 0xAB] s:I86, t:STRINGOP, c:STOS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSD Yv,EAX aCX,aDI,Fv [ rep ds32 0xAB] s:I86, t:STRINGOP, c:STOS, w:CW|R|RCW|RCW|RW, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSQ Yv,RAX aDI,Fv [ ds64 0xAB] s:I86, t:STRINGOP, c:STOS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
STOSQ Yv,RAX aCX,aDI,Fv [ rep ds64 0xAB] s:I86, t:STRINGOP, c:STOS, w:CW|R|RCW|RCW|RW, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
|
|
LODSB AL,Xb aSI,Fv [ 0xAC] s:I86, t:STRINGOP, c:LODS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
LODSB AL,Xb aCX,aSI,Fv [ rep 0xAC] s:I86, t:STRINGOP, c:LODS, w:CW|CR|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
LODSW AX,Xv aSI,Fv [ ds16 0xAD] s:I86, t:STRINGOP, c:LODS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
LODSW AX,Xv aCX,aSI,Fv [ rep ds16 0xAD] s:I86, t:STRINGOP, c:LODS, w:CW|CR|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
LODSD EAX,Xv aSI,Fv [ ds32 0xAD] s:I86, t:STRINGOP, c:LODS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
LODSD EAX,Xv aCX,aSI,Fv [ rep ds32 0xAD] s:I86, t:STRINGOP, c:LODS, w:CW|CR|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
LODSQ RAX,Xv aSI,Fv [ ds64 0xAD] s:I86, t:STRINGOP, c:LODS, w:W|R|RW|R, f:DF=t , a:OP1DEF|OP2DEF, p:REP
|
|
LODSQ RAX,Xv aCX,aSI,Fv [ rep ds64 0xAD] s:I86, t:STRINGOP, c:LODS, w:CW|CR|RCW|RCW|RW, f:DF=t, a:OP1DEF|OP2DEF, p:REP
|
|
|
|
SCASB AL,Yb aDI,Fv [ 0xAE] s:I86, t:STRINGOP, c:SCAS, w:R|R|RW|RW, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASB AL,Yb aCX,aDI,Fv [ rep 0xAE] s:I86, t:STRINGOP, c:SCAS, w:R|CR|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASW AX,Yv aDI,Fv [ ds16 0xAF] s:I86, t:STRINGOP, c:SCAS, w:R|R|RW|RW, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASW AX,Yv aCX,aDI,Fv [ rep ds16 0xAF] s:I86, t:STRINGOP, c:SCAS, w:R|CR|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASD EAX,Yv aDI,Fv [ ds32 0xAF] s:I86, t:STRINGOP, c:SCAS, w:R|R|RW|RW, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASD EAX,Yv aCX,aDI,Fv [ rep ds32 0xAF] s:I86, t:STRINGOP, c:SCAS, w:R|CR|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASQ RAX,Yv aDI,Fv [ ds64 0xAF] s:I86, t:STRINGOP, c:SCAS, w:R|R|RW|RW, f:CMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
SCASQ RAX,Yv aCX,aDI,Fv [ rep ds64 0xAF] s:I86, t:STRINGOP, c:SCAS, w:R|CR|RCW|RCW|RW, f:REPCMPS, a:OP1DEF|OP2DEF, p:REPC
|
|
|
|
# 0xB0 - 0xBF
|
|
MOV Zb,Ib nil [ 0xB0 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB1 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB2 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB3 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB4 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB5 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB6 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zb,Ib nil [ 0xB7 ib] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xB8 iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xB9 iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xBA iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xBB iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xBC iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xBD iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xBE iv] s:I86, t:DATAXFER, w:W|R
|
|
MOV Zv,Iv nil [ 0xBF iv] s:I86, t:DATAXFER, w:W|R
|
|
|
|
# 0xC0 - 0xCF
|
|
ROL Eb,Ib Fv [ 0xC0 /0 ib] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
ROR Eb,Ib Fv [ 0xC0 /1 ib] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
RCL Eb,Ib Fv [ 0xC0 /2 ib] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
RCR Eb,Ib Fv [ 0xC0 /3 ib] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
SHL Eb,Ib Fv [ 0xC0 /4 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SHR Eb,Ib Fv [ 0xC0 /5 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAL Eb,Ib Fv [ 0xC0 /6 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAR Eb,Ib Fv [ 0xC0 /7 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
ROL Ev,Ib Fv [ 0xC1 /0 ib] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
ROR Ev,Ib Fv [ 0xC1 /1 ib] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
RCL Ev,Ib Fv [ 0xC1 /2 ib] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
RCR Ev,Ib Fv [ 0xC1 /3 ib] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
SHL Ev,Ib Fv [ 0xC1 /4 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SHR Ev,Ib Fv [ 0xC1 /5 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAL Ev,Ib Fv [ 0xC1 /6 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAR Ev,Ib Fv [ 0xC1 /7 ib] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
RETN Iw rIP,sSP,Kv,SHS1 [ 0xC2 iw] s:I86, t:RET, w:R|W|W|R|R, a:F64, p:BND
|
|
RETN nil rIP,Kv,SHS1 [ 0xC3] s:I86, t:RET, w:W|R|R, a:F64, p:BND
|
|
LES Gz,Mp ES [ 0xC4 /r:mem] s:I86, t:SEGOP, w:W|R|W, m:NO64|NOSGX
|
|
LDS Gz,Mp DS [ 0xC5 /r:mem] s:I86, t:SEGOP, w:W|R|W, m:NO64|NOSGX
|
|
MOV Eb,Ib nil [ 0xC6 /0 ib] s:I86, t:DATAXFER, w:W|R, p:XRELEASE|HLEWOL
|
|
XABORT Ib EAX [ 0xC6 /0xF8 ib] s:TSX, t:UNCOND_BR, w:R|RCW, i:RTM, m:NOTSX
|
|
MOV Ev,Iz nil [ 0xC7 /0 iz] s:I86, t:DATAXFER, w:W|R, a:OP2SEXO1, p:XRELEASE|HLEWOL
|
|
XBEGIN Jz yIP,EAX [ 0xC7 /0xF8 cz] s:TSX, t:COND_BR, w:R|RW|CW, i:RTM
|
|
ENTER Iw,Ib rBP,sSP,Kv [ 0xC8 iw ib] s:I186, t:MISC, w:R|R|RW|RW|W
|
|
LEAVE nil sBP,rBP,rSP,Kv [ 0xC9] s:I186, t:MISC, w:R|RW|RW|R, a:D64
|
|
RETF Iw CS,rIP,Kv2,SHS2 [ 0xCA iw] s:I86, t:RET, w:R|W|W|R|R
|
|
RETF nil CS,rIP,Kv2,SHS2 [ 0xCB] s:I86, t:RET, w:W|W|R|R
|
|
INT3 nil CS,rIP,Kv3,Fv,SHS3 [ 0xCC] s:I86, t:INTERRUPT, w:RW|RW|RW|W|W, f:INT, m:NOSGX
|
|
INT Ib CS,rIP,Kv3,Fv,SHS3 [ 0xCD ib] s:I86, t:INTERRUPT, w:R|RW|RW|RW|W|W, f:INT, m:NOSGX
|
|
INTO nil CS,rIP,Kv3,Fv,SHS3 [ 0xCE] s:I86, t:INTERRUPT, w:RW|RW|RW|W|W, f:INT, m:NO64, m:NOSGX
|
|
IRETW nil CS,rIP,Kv3,Fv,SHS3 [ ds16 0xCF] s:I86, t:RET, c:IRET, w:RW|W|R|RW|RW, a:SERIAL
|
|
IRETD nil CS,rIP,Kv3,Fv,SHS3 [ ds32 0xCF] s:I86, t:RET, c:IRET, w:RW|W|R|RW|RW, a:SERIAL
|
|
IRETQ nil CS,rIP,Kv3,Fv,SHS3 [ ds64 0xCF] s:I86, t:RET, c:IRET, w:RW|W|R|RW|RW, a:SERIAL
|
|
|
|
# 0xD0 - 0xDF
|
|
ROL Eb,1 Fv [ 0xD0 /0] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
ROR Eb,1 Fv [ 0xD0 /1] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
RCL Eb,1 Fv [ 0xD0 /2] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
RCR Eb,1 Fv [ 0xD0 /3] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
SHL Eb,1 Fv [ 0xD0 /4] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SHR Eb,1 Fv [ 0xD0 /5] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAL Eb,1 Fv [ 0xD0 /6] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAR Eb,1 Fv [ 0xD0 /7] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
ROL Ev,1 Fv [ 0xD1 /0] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
ROR Ev,1 Fv [ 0xD1 /1] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
RCL Ev,1 Fv [ 0xD1 /2] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
RCR Ev,1 Fv [ 0xD1 /3] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
SHL Ev,1 Fv [ 0xD1 /4] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SHR Ev,1 Fv [ 0xD1 /5] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAL Ev,1 Fv [ 0xD1 /6] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAR Ev,1 Fv [ 0xD1 /7] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
ROL Eb,CL Fv [ 0xD2 /0] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
ROR Eb,CL Fv [ 0xD2 /1] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
RCL Eb,CL Fv [ 0xD2 /2] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
RCR Eb,CL Fv [ 0xD2 /3] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
SHL Eb,CL Fv [ 0xD2 /4] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SHR Eb,CL Fv [ 0xD2 /5] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAL Eb,CL Fv [ 0xD2 /6] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAR Eb,CL Fv [ 0xD2 /7] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
ROL Ev,CL Fv [ 0xD3 /0] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
ROR Ev,CL Fv [ 0xD3 /1] s:I86, t:ROTATE, w:RW|R|W, f:ROT
|
|
RCL Ev,CL Fv [ 0xD3 /2] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
RCR Ev,CL Fv [ 0xD3 /3] s:I86, t:ROTATE, w:RW|R|RW, f:ROTC
|
|
SHL Ev,CL Fv [ 0xD3 /4] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SHR Ev,CL Fv [ 0xD3 /5] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAL Ev,CL Fv [ 0xD3 /6] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
SAR Ev,CL Fv [ 0xD3 /7] s:I86, t:SHIFT, w:RW|R|W, f:SHIFT
|
|
AAM Ib AL,AH,Fv [ 0xD4 ib] s:I86, t:DECIMAL, w:R|RW|W|W, f:AADM, m:NO64
|
|
AAD Ib AL,AH,Fv [ 0xD5 ib] s:I86, t:DECIMAL, w:R|RW|RW|W, f:AADM, m:NO64
|
|
SALC nil AL,Fv [ 0xD6] s:I86, t:FLAGOP, w:W|R, f:CF=t
|
|
XLATB nil AL,pBXALb [ 0xD7] s:I86, t:MISC, w:W|R
|
|
|
|
# 0xE0 - 0xEF
|
|
LOOPNZ Jb aCX,rIP,Fv [ 0xE0 cb] s:I86, t:COND_BR, w:R|RW|RW|R, f:ZF=t, a:F64
|
|
LOOPZ Jb aCX,rIP,Fv [ 0xE1 cb] s:I86, t:COND_BR, w:R|RW|RW|R, f:ZF=t, a:F64
|
|
LOOP Jb aCX,rIP,Fv [ 0xE2 cb] s:I86, t:COND_BR, w:R|RW|RW|R, a:F64
|
|
JCXZ Jb aCX,rIP [ as16 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|RW, a:F64
|
|
JECXZ Jb aCX,rIP [ as32 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|RW, a:F64
|
|
JRCXZ Jb aCX,rIP [ as64 0xE3 cb] s:I86, t:COND_BR, c:JrCXZ, w:R|R|RW, a:F64
|
|
IN AL,Ib Fv [ 0xE4 ib] s:I86, t:IO, w:W|R|R, f:IO, m:NOSGX
|
|
IN eAX,Ib Fv [ 0xE5 ib] s:I86, t:IO, w:W|R|R, f:IO, m:NOSGX
|
|
OUT Ib,AL Fv [ 0xE6 ib] s:I86, t:IO, w:R|R|R, f:IO, a:SERIAL, m:NOSGX
|
|
OUT Ib,eAX Fv [ 0xE7 ib] s:I86, t:IO, w:R|R|R, f:IO, a:SERIAL, m:NOSGX
|
|
CALL Jz rIP,Kv,SHS1 [ 0xE8 cz] s:I86, t:CALL, c:CALLNR, w:R|RW|W|W, a:F64, p:BND
|
|
JMP Jz rIP [ 0xE9 cz] s:I86, t:UNCOND_BR, c:JMPNR, w:R|RW, a:F64, p:BND
|
|
JMPF Ap CS,rIP [ 0xEA cp] s:I86, t:UNCOND_BR, c:JMPFD, w:R|W|W, m:NO64|NOSGX
|
|
JMP Jb rIP [ 0xEB cb] s:I86, t:UNCOND_BR, c:JMPNR, w:R|RW, a:F64, p:BND
|
|
IN AL,DX Fv [ 0xEC] s:I86, t:IO, w:W|R|R, f:IO, m:NOSGX
|
|
IN eAX,DX Fv [ 0xED] s:I86, t:IO, w:W|R|R, f:IO, m:NOSGX
|
|
OUT DX,AL Fv [ 0xEE] s:I86, t:IO, w:R|R|R, f:IO, a:SERIAL, m:NOSGX
|
|
OUT DX,eAX Fv [ 0xEF] s:I86, t:IO, w:R|R|R, f:IO, a:SERIAL, m:NOSGX
|
|
|
|
# 0xF0 - 0xFF
|
|
LOCK nil nil [ 0xF0] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
REPNZ nil nil [ 0xF2] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
XACQUIRE nil nil [ 0xF2] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
BND nil nil [ 0xF2] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
REPZ nil nil [ 0xF3] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
XRELEASE nil nil [ 0xF2] s:UNKNOWN, t:UNKNOWN, a:PREFIX
|
|
|
|
INT1 nil CS,rIP,Kv3,Fv [ 0xF1] s:I86, t:INTERRUPT, w:RW|RW|RW|W, f:INT, m:NOSGX
|
|
HLT nil nil [ 0xF4] s:I86, t:SYSTEM, m:KERNEL
|
|
CMC nil Fv [ 0xF5] s:I86, t:FLAGOP, w:RW, f:CF=m
|
|
TEST Eb,Ib Fv [ 0xF6 /0 ib] s:I86, t:LOGIC, w:R|R|W, f:LOGIC
|
|
TEST Eb,Ib Fv [ 0xF6 /1 ib] s:I86, t:LOGIC, w:R|R|W, f:LOGIC
|
|
NOT Eb nil [ 0xF6 /2] s:I86, t:LOGIC, w:RW|W, p:HLE|LOCK
|
|
NEG Eb Fv [ 0xF6 /3] s:I86, t:LOGIC, w:RW|W, f:ARITH, p:HLE|LOCK
|
|
MUL Eb AL,AX,Fv [ 0xF6 /4] s:I86, t:ARITH, w:R|R|W|W, f:MUL
|
|
IMUL Eb AL,AX,Fv [ 0xF6 /5] s:I86, t:ARITH, w:R|R|W|W, f:MUL
|
|
DIV Eb AX,AL,AH,Fv [ 0xF6 /6] s:I86, t:ARITH, w:R|R|W|W|W, f:DIV
|
|
IDIV Eb AX,AL,AH,Fv [ 0xF6 /7] s:I86, t:ARITH, w:R|R|W|W|W, f:DIV
|
|
TEST Ev,Iz Fv [ 0xF7 /0 iz] s:I86, t:LOGIC, w:R|R|W, f:LOGIC, a:OP2SEXO1
|
|
TEST Ev,Iz Fv [ 0xF7 /1 iz] s:I86, t:LOGIC, w:R|R|W, f:LOGIC, a:OP2SEXO1
|
|
NOT Ev nil [ 0xF7 /2] s:I86, t:LOGIC, w:RW|W, p:HLE|LOCK
|
|
NEG Ev Fv [ 0xF7 /3] s:I86, t:LOGIC, w:RW|W, f:ARITH, p:HLE|LOCK
|
|
MUL Ev rAX,rDX,Fv [ 0xF7 /4] s:I86, t:ARITH, w:R|RW|W|W, f:MUL
|
|
IMUL Ev rAX,rDX,Fv [ 0xF7 /5] s:I86, t:ARITH, w:R|RW|W|W, f:MUL
|
|
DIV Ev rAX,rDX,Fv [ 0xF7 /6] s:I86, t:ARITH, w:R|RW|RW|W, f:DIV
|
|
IDIV Ev rAX,rDX,Fv [ 0xF7 /7] s:I86, t:ARITH, w:R|RW|RW|W, f:DIV
|
|
CLC nil Fv [ 0xF8] s:I86, t:FLAGOP, w:W, f:CF=0
|
|
STC nil Fv [ 0xF9] s:I86, t:FLAGOP, w:W, f:CF=1
|
|
CLI nil Fv [ 0xFA] s:I86, t:FLAGOP, w:RW, f:IF=0
|
|
STI nil Fv [ 0xFB] s:I86, t:FLAGOP, w:RW, f:IF=1
|
|
CLD nil Fv [ 0xFC] s:I86, t:FLAGOP, w:W, f:DF=0
|
|
STD nil Fv [ 0xFD] s:I86, t:FLAGOP, w:W, f:DF=1
|
|
INC Eb Fv [ 0xFE /0] s:I86, t:ARITH, w:RW|W, f:INCDEC, p:HLE|LOCK
|
|
DEC Eb Fv [ 0xFE /1] s:I86, t:ARITH, w:RW|W, f:INCDEC, p:HLE|LOCK
|
|
INC Ev Fv [ 0xFF /0] s:I86, t:ARITH, w:RW|W, f:INCDEC, p:HLE|LOCK
|
|
DEC Ev Fv [ 0xFF /1] s:I86, t:ARITH, w:RW|W, f:INCDEC, p:HLE|LOCK
|
|
CALL Ev rIP,Kv,SHS1 [ 0xFF /2] s:I86, t:CALL, c:CALLNI, w:R|W|W|W, a:F64|CETT, p:BND|DNT
|
|
CALLF Mp CS,rIP,Kv2,SHS2 [ 0xFF /3:mem] s:I86, t:CALL, c:CALLFI, w:R|W|W|W|W, a:CETT, m:NOSGX
|
|
JMP Ev rIP [ 0xFF /4] s:I86, t:UNCOND_BR, c:JMPNI, w:R|W, a:F64|CETT, p:BND|DNT
|
|
JMPF Mp CS,rIP [ 0xFF /5:mem] s:I86, t:UNCOND_BR, c:JMPFI, w:R|W|W, a:CETT, m:NOSGX
|
|
PUSH Ev Kv [ 0xFF /6] s:I86, t:PUSH, w:R|W, a:D64
|