IA-32 architecture one byte opcodes
xxh |
x0h |
x1h |
x2h |
x3h |
x4h |
x5h |
x6h |
x7h |
0xh |
ADD Eb,Gb |
ADD Ev,Gv |
ADD Gb,Eb |
ADD Gv,Ev |
ADD AL,Ib |
ADD eAX,Iv |
PUSH ES |
POP ES |
1xh |
ADC Eb,Gb |
ADC Ev,Gv |
ADC Gb,Eb |
ADC Gv,Ev |
ADC AL,Ib |
ADC eAX,Iv |
PUSH SS |
POP SS |
2xh |
AND Eb,Gb |
AND Ev,Gv |
AND Gb,Eb |
AND Gv,Ev |
AND AL,Ib |
AND eAx,Iv |
ES: |
DAA |
3xh |
XOR Eb,Gb |
XOR Ev,Gv |
XOR Gb,Eb |
XOR Gv,Ev |
XOR AL,Ib |
XOR eAX,Iv |
SS: |
AAA |
4xh |
INC eAX |
INC eCX |
INC eDX |
INC eBX |
INC eSP |
INC eBP |
INC eSI |
INC eDI |
5xh |
PUSH eAX |
PUSH eCX |
PUSH eDX |
PUSH eBX |
PUSH eSP |
PUSH eBP |
PUSH eSI |
PUSH eDI |
6xh |
PUSHA PUSHAD (80186+) |
POPA POPAD (80186+) |
BOUND Gv,Ma (80186+) |
ARPL Ew,Rw (80286+) |
FS: (80386+) |
GS: (80386+) |
OPSIZE: (80386+) |
ADSIZE: (80386+) |
7xh |
JO Jb |
JNO Jb |
JB Jb |
JNB Jb |
JZ Jb |
JNZ Jb |
JBE Jb |
JNBE Jb |
8xh |
group #1 Eb,Ib |
group #1 Ev,Iv |
group #1* Eb,Ib |
group #1 Ev,Ib |
TEST Eb,Gb |
TEST Ev,Gv |
XCHG Eb,Gb |
XCHG Ev,Gv |
9xh |
NOP PAUSE (F3h) (see CPUID) |
XCHG eCX,eAX |
XCHG eDX,eAX |
XCHG eBX,eAX |
XCHG eSP,eAX |
XCHG eBP,eAX |
XCHG eSI,eAX |
XCHG eDI,eAX |
Axh |
MOV AL,Ob |
MOV eAX,Ov |
MOV Ob,AL |
MOV Ov,eAX |
MOVSB Yb,Xb |
MOVSW/D Yv,Xv |
CMPSB Yb,Xb |
CMPSW/D Yv,Xv |
Bxh |
MOV AL,Ib |
MOV CL,Ib |
MOV DL,Ib |
MOV BL,Ib |
MOV AH,Ib |
MOV CH,Ib |
MOV DH,Ib |
MOV BH,Ib |
Cxh |
group #2 Eb,Ib (80186+) |
group #2 Ev,Ib (80186+) |
RET near Iw |
RET near |
LES Gv,Mp |
LDS Gv,Mp |
group #12 Eb,Ib |
group #12 Ev,Iv |
Dxh |
group #2 Eb,1 |
group #2 Ev,1 |
group #2 Eb,CL |
group #2 Ev,CL |
AAM Ib |
AAD Ib |
SALC SETALC |
XLAT |
Exh |
LOOPNE LOOPNZ Jb |
LOOPE LOOPZ Jb |
LOOP Jb |
JCXZ JECX Jb |
IN AL,Ib |
IN eAX,Ib |
OUT Ib,AL |
OUT Ib,eAX |
Fxh |
LOCK: |
INT1 (ICEBP) (80386+) |
REPNE: |
REP: REPE: |
HLT |
CMC |
group #3 Eb |
group #3 Ev |
xxh |
x8h |
x9h |
xAh |
xBh |
xCh |
xDh |
xEh |
xFh |
0xh |
OR Eb,Gb |
OR Ev,Gv |
OR Gb,Eb |
OR Gv,Ev |
OR AL,Ib |
OR eAX,Iv |
PUSH CS |
two byte opcodes (80286+) |
1xh |
SBB Eb,Gb |
SBB Ev,Gv |
SBB Gb,Eb |
SBB Gv,Ev |
SBB AL,Ib |
SBB eAX,Iv |
PUSH DS |
POP DS |
2xh |
SUB Eb,Gb |
SUB Ev,Gv |
SUB Gb,Eb |
SUB Gv,Ev |
SUB AL,Ib |
SUB eAX,Iv |
CS:   Hint Not Taken for Jcc (P4+) |
DAS |
3xh |
CMP Eb,Gb |
CMP Ev,Gv |
CMP Gb,Eb |
CMP Gv,Ev |
CMP AL,Ib |
CMP eAX,Iv |
DS:   Hint Taken for Jcc (P4+) |
AAS |
4xh |
DEC eAX |
DEC eCX |
DEC eDX |
DEC eBX |
DEC eSP |
DEC eBP |
DEC eSI |
DEC eDI |
5xh |
POP eAX |
POP eCX |
POP eDX |
POP eBX |
POP eSP |
POP eBP |
POP eSI |
POP eDI |
6xh |
PUSH Iv (80186+) |
IMUL Gv,Ev,Iv (80186+) |
PUSH Ib (80186+) |
IMUL Gv,Ev,Ib (80186+) |
INSB Yb,DX (80186+) |
INSW/D Yv,DX (80186+) |
OUTSB DX,Xb (80186+) |
OUTSW/D DX,Xv (80186+) |
7xh |
JS Jb |
JNS Jb |
JP Jb |
JNP Jb |
JL Jb |
JNL Jb |
JLE Jb |
JNLE Jb |
8xh |
MOV Eb,Gb |
MOV Ev,Gv |
MOV Gb,Eb |
MOV Gv,Ev |
MOV Ew,Sw |
LEA Gv,M |
MOV Sw,Ew |
group #10 |
9xh |
CBW (8088) CBW/CWDE (80386+) |
CWD (8088) CWD/CDQ (80386+) |
CALL Ap |
WAIT FWAIT |
PUSHF Fv |
POPF Fv |
SAHF |
LAHF |
Axh |
TEST AL,Ib |
TEST eAX,Iv |
STOSB Yb,AL |
STOSW/D Yv,eAX |
LODSB AL,Xb |
LODSW/D eAX,Xv |
SCASB Yb,AL |
SCASW/D Yv,eAX |
Bxh |
MOV eAX,Iv |
MOV eCX,Iv |
MOV eDX,Iv |
MOV eBX,Iv |
MOV eSP,Iv |
MOV eBP,Iv |
MOV eSI,Iv |
MOV eDI,Iv |
Cxh |
ENTER Iw,Ib (80186+) |
LEAVE (80186+) |
RET far Iw |
RET far |
INT3 |
INT Ib |
INTO |
IRET |
Dxh |
ESC 0 |
ESC 1 |
ESC 2 |
ESC 3 |
ESC 4 |
ESC 5 |
ESC 6 |
ESC 7 |
Exh |
CALL Jv |
JMP Jv |
JMP Ap |
JMP Jb |
IN AL,DX |
IN eAX,DX |
OUT DX,AL |
OUT DX,eAX |
Fxh |
CLC |
STC |
CLI |
STI |
CLD |
STD |
group #4 INC/DEC |
group #5 INC/DEC etc. |
note: The opcodes marked with * are aliases to other opcodes.
|