Buscar

8086-OPCODE

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

00 ADD Eb Gb
01 ADD Ev Gv
02 ADD Gb Eb
03 ADD Gv Ev
04 ADD AL Ib
05 ADD eAX Iv
06 PUSH ES
07 POP ES
08 OR Eb Gb
09 OR Ev Gv
0A OR Gb Eb
0B OR Gv Ev
0C OR AL Ib
0D OR eAX Iv
0E PUSH CS
0F --
10 ADC Eb Gb
11 ADC Ev Gv
12 ADC Gb Eb
13 ADC Gv Ev
14 ADC AL Ib
15 ADC eAX Iv
16 PUSH SS
17 POP SS
18 SBB Eb Gb
19 SBB Ev Gv
1A SBB Gb Eb
1B SBB Gv Ev
1C SBB AL Ib
1D SBB eAX Iv
1E PUSH DS
1F POP DS
20 AND Eb Gb
21 AND Ev Gv
22 AND Gb Eb
23 AND Gv Ev
24 AND AL Ib
25 AND eAX Iv
26 ES:
27 DAA
28 SUB Eb Gb
29 SUB Ev Gv
2A SUB Gb Eb
2B SUB Gv Ev
2C SUB AL Ib
2D SUB eAX Iv
2E CS:
2F DAS
30 XOR Eb Gb
31 XOR Ev Gv
32 XOR Gb Eb
33 XOR Gv Ev
34 XOR AL Ib
35 XOR eAX Iv
36 SS:
37 AAA
38 CMP Eb Gb
39 CMP Ev Gv
3A CMP Gb Eb
3B CMP Gv Ev
3C CMP AL Ib
3D CMP eAX Iv
3E DS:
3F AAS
40 INC eAX
41 INC eCX
42 INC eDX
43 INC eBX
44 INC eSP
45 INC eBP
46 INC eSI
47 INC eDI
48 DEC eAX
49 DEC eCX
4A DEC eDX
4B DEC eBX
4C DEC eSP
4D DEC eBP
4E DEC eSI
4F DEC eDI
50 PUSH eAX
51 PUSH eCX
52 PUSH eDX
53 PUSH eBX
54 PUSH eSP
55 PUSH eBP
56 PUSH eSI
57 PUSH eDI
58 POP eAX
59 POP eCX
5A POP eDX
5B POP eBX
5C POP eSP
5D POP eBP
5E POP eSI
5F POP eDI
60 --
61 --
62 --
63 --
64 --
65 --
66 --
67 --
68 --
69 --
6A --
6B --
6C --
6D --
6E --
6F --
70 JO Jb
71 JNO Jb
72 JB Jb
73 JNB Jb
74 JZ Jb
75 JNZ Jb
76 JBE Jb
77 JA Jb
78 JS Jb
79 JNS Jb
7A JPE Jb
7B JPO Jb
7C JL Jb
7D JGE Jb
7E JLE Jb
7F JG Jb
80 GRP1 Eb Ib
81 GRP1 Ev Iv
82 GRP1 Eb Ib
83 GRP1 Ev Ib
84 TEST Gb Eb
85 TEST Gv Ev
86 XCHG Gb Eb
87 XCHG Gv Ev
88 MOV Eb Gb
89 MOV Ev Gv
8A MOV Gb Eb
8B MOV Gv Ev
8C MOV Ew Sw
8D LEA Gv M
8E MOV Sw Ew
8F POP Ev
90 NOP
91 XCHG eCX eAX
92 XCHG eDX eAX
93 XCHG eBX eAX
94 XCHG eSP eAX
95 XCHG eBP eAX
96 XCHG eSI eAX
97 XCHG eDI eAX
98 CBW
99 CWD
9A CALL Ap
9B WAIT
9C PUSHF
9D POPF
9E SAHF
9F LAHF
A0 MOV AL Ob
A1 MOV eAX Ov
A2 MOV Ob AL
A3 MOV Ov
eAX
A4 MOVSB
A5 MOVSW
A6 CMPSB
A7 CMPSW
A8 TEST AL Ib
A9 TEST eAX Iv
AA STOSB
AB STOSW
AC LODSB
AD LODSW
AE SCASB
AF SCASW
B0 MOV AL Ib
B1 MOV CL Ib
B2 MOV DL Ib
B3 MOV BL Ib
B4 MOV AH Ib
B5 MOV CH Ib
B6 MOV DH Ib
B7 MOV BH Ib
B8 MOV eAX Iv
B9 MOV eCX Iv
BA MOV eDX Iv
BB MOV eBX Iv
BC MOV eSP Iv
BD MOV eBP Iv
BE MOV eSI Iv
BF MOV eDI Iv
C0 --
C1 --
C2 RET Iw
C3 RET
C4 LES Gv Mp
C5 LDS Gv Mp
C6 MOV Eb Ib
C7 MOV Ev Iv
C8 --
C9 --
CA RETF Iw
CB RETF
CC INT 3
CD INT Ib
CE INTO
CF IRET
D0 GRP2 Eb 1
D1 GRP2 Ev 1
D2 GRP2 Eb CL
D3 GRP2 Ev CL
D4 AAM I0
D5 AAD I0
D6 --
D7 XLAT
D8 --
D9 --
DA --
DB --
DC --
DD --
DE --
DF --
E0 LOOPNZ Jb
E1 LOOPZ Jb
E2 LOOP Jb
E3 JCXZ Jb
E4 IN AL Ib
E5 IN eAX Ib
E6 OUT Ib AL
E7 OUT Ib
eAX
E8 CALL Jv
E9 JMP Jv
EA JMP Ap
EB JMP Jb
EC IN AL DX
ED IN eAX DX
EE OUT DX AL
EF OUT DX
eAX
F0 LOCK
F1 --
F2 REPNZ
F3 REPZ
F4 HLT
F5 CMC
F6 GRP3a Eb
F7 GRP3b Ev
F8 CLC
F9 STC
FA CLI
FB STI
FC CLD
FD STD
FE GRP4 Eb
FF GRP5 Ev
GRP1/0 ADD
GRP1/1 OR
GRP1/2 ADC
GRP1/3 SBB
GRP1/4 AND
GRP1/5 SUB
GRP1/6 XOR
GRP1/7 CMP
GRP2/0 ROL
GRP2/1 ROR
GRP2/2 RCL
GRP2/3 RCR
GRP2/4 SHL
GRP2/5 SHR
GRP2/6 --
GRP2/7 SAR
GRP3a/0 TEST Eb Ib
GRP3a/1 --
GRP3a/2 NOT
GRP3a/3 NEG
GRP3a/4 MUL
GRP3a/5 IMUL
GRP3a/6 DIV
GRP3a/7 IDIV
GRP3b/0 TEST Ev Iv
GRP3b/1 --
GRP3b/2 NOT
GRP3b/3 NEG
GRP3b/4 MUL
GRP3b/5 IMUL
GRP3b/6 DIV
GRP3b/7 IDIV
GRP4/0 INC
GRP4/1 DEC
GRP4/2 --
GRP4/3 --
GRP4/4 --
GRP4/5 --
GRP4/6 --
GRP4/7 --
GRP5/0 INC
GRP5/1 DEC
GRP5/2 CALL
GRP5/3 CALL Mp
GRP5/4 JMP
GRP5/5 JMP Mp
GRP5/6 PUSH
GRP5/7 --
Argument Addressing Codes
A Direct address. The instruction has no ModR/M byte; the address of 
the operand is encoded in the instruction. Applicable, e.g., to far JMP 
(opcode EA).
E A ModR/M byte follows the opcode and specifies the operand. The 
operand is either a general-purpose register or a memory address. If 
it is a memory address, the address is computed from a segment 
register and any of the following values: a base register, an index 
register, a displacement.
G The reg field of the ModR/M byte selects a general register.
I Immediate data. The operand value is encoded in subsequent bytes of 
the instruction.
J The instruction contains a relative offset to be added to the address of 
the subsequent instruction. Applicable, e.g., to short JMP (opcode 
EB), or LOOP.
M The ModR/M byte may refer only to memory. Applicable, e.g., to LES 
and LDS.
O The instruction has no ModR/M byte; the offset of the operand is 
encoded as a WORD in the instruction. Applicable, e.g., to certain 
MOVs (opcodes A0 through A3).
S The reg field of the ModR/M byte selects a segment register.
Argument Operand Codes
0 Byte argument. Unusual in that arguments of this type are suppressed 
in ASM output when they have the default value of 10 (0xA). 
Applicable, e.g., to AAM and AAD.
b Byte argument.
p 32-bit segment:offset pointer.
w Word argument.
v Word argument. (The 'v' code has a more complex meaning in later 
x86 opcode maps, from which this was derived, but here it's just a 
synonym for the 'w' code.)
Special Argument Codes
AL 8-bit register: The low byte of AX
CL 8-bit register: The low byte of CX
DL 8-bit register: The low byte of DX
BL 8-bit register: The low byte of BX
AH 8-bit register: The high byte of AX
CH 8-bit register: The high byte of CX
DH 8-bit register: The high byte of DX
BH 8-bit register: The high byte of BX
AX 16-bit register: The 'accumulator' register
CX 16-bit register: The 'counter' register
DX 16-bit register: The 'data' register
BX 16-bit register: The 'base' register
SP 16-bit register: The 'stack pointer' register
BP 16-bit register: The 'base pointer' register
SI 16-bit register: The 'source index' register
DI 16-bit register: The 'destination index' register
ES 16-bit register: The 'extra' segment register
CS 16-bit register: The 'code' segment register
SS 16-bit register: The 'stack' segment register
DS 16-bit register: The 'data' segment register
1 A constant argument of 1, implicit in the opcode, and not represented 
elsewhere in the instruction. This argument *is* displayed in 
assembly code.
3 A constant argument of 3, implicit in the opcode, and not 
represented elsewhere in the instruction. This argument *is* 
displayed in assembly code.
M The ModR/M byte refers to a memory location, however the contents 
of that memory location are irrelevant; the address itself is the 
operand of the instruction. Applicable, e.g., to LEA.
Instructions and opcodes
oo : Function 
• 00 : If mmm = 110, then a displacement follows the operation; 
otherwise, no displacement is used 
• 01 : An 8-bit signed displacement follows the opcode 
• 10 : A 16-bit signed displacement follows the opcode 
• 11 : mmm specifies a register, instead of an addressing mode 
mmm : Function 
• 000 : DS:[BX+SI] 
• 001 : DS:[BX+DI] 
• 010 : SS:[BP+SI] 
• 011 : SS:[BP+DI] 
• 100 : DS:[SI] 
• 101 : DS:[DI] 
• 110 : SS:[BP] 
• 111 : DS:[BX] 
rrr : W=0 : W=1 : reg32 
• 000 : AL : AX : EAX 
• 001 : CL : CX : ECX 
• 010 : DL : DX : EDX 
• 011 : BL : BX : EBX 
• 100 : AH : SP : ESP 
• 101 : CH : BP : EBP 
• 110 : DH : SI : ESI 
• 111 : BH : DI : EDI 
sss : Segment Register 
• 000 : ES 
• 001 : CS 
• 010 : SS 
• 011 : DS 
• 100 : FS (Only 386+)
• 101 : GS (Only 386+)
rrr : Index Register
• 000 : EAX 
• 001 : ECX 
• 010 : EDX 
• 011 : EBX 
• 100 : No Index 
• 101 : EBP 
• 110 : ESI 
• 111 : EDI 
32 bit addressing-mode 
oo mmm rrr Description
00 000 DS:[EAX]
00 001 DS:[ECX]
00 010 DS:[EDX]
00 011 DS:[EBX]
00 100 000 DS:[EAX+scaled_index]
00 100 001 DS:[ECX+scaled_index]
00 100 010 DS:[EDX+scaled_index]
00 100 011 DS:[EBX+scaled_index]
00 100 100 SS:[ESP+scaled_index]
00 100 101 DS:[disp32+scaled_index]00 100 110 DS:[ESI+scaled_index]
00 100 111 DS:[EDI+scaled_index]
00 101 DS:disp32
00 110 DS:[ESI]
00 111 DS:[EDI]
01 000 DS:[EAX+disp8]
01 001 DS:[ECX+disp8]
01 010 DS:[EDX+disp8]
01 011 DS:[EBX+disp8]
01 100 000 DS:[EAX+scaled_index+disp8]
01 100 001 DS:[ECX+scaled_index+disp8]
01 100 010 DS:[EDX+scaled_index+disp8]
01 100 011 DS:[EBX+scaled_index+disp8]
01 100 100 SS:[ESP+scaled_index+disp8]
01 100 101 SS:[EBP+scaled_index+disp8]
01 100 110 DS:[ESI+scaled_index+disp8]
01 100 111 DS:[EDI+scaled_index+disp8]
01 101 SS:[EBP+disp8]
01 110 DS:[ESI+disp8]
01 111 DS:[EDI+disp8]
10 000 DS:[EAX+disp32]
10 001 DS:[ECX+disp32]
10 010 DS:[EDX+disp32]
10 011 DS:[EBX+disp32]
10 100 000 DS:[EAX+scaled_index+disp32]
10 100 001 DS:[ECX+scaled_index+disp32]
10 100 010 DS:[EDX+scaled_index+disp32]
10 100 011 DS:[EBX+scaled_index+disp32]
10 100 100 SS:[ESP+scaled_index+disp32]
10 100 101 SS:[EBP+scaled_index+disp32]
10 100 110 DS:[ESI+scaled_index+disp32]
10 100 111 DS:[EDI+scaled_index+disp32]
10 101 SS:[EBP+disp32]
10 110 DS:[ESI+disp32]
10 111 DS:[EDI+disp32]
Name Regs Opcode Description
AAA 00110111 ASCII Adjust After Addition
AAD Imm8 11010101 ASCII Adjust Register AX Before Division
 1101010100001010 ASCII Adjust Register AX Before Division
AAM Imm8 11010100
ASCII Adjust AX 
Register After 
Multiplication
 1101010000001010
ASCII Adjust AX 
Register After 
Multiplication
AAS 00111111
ASCII Adjust AL 
Register After 
Subtraction
ADC Reg,Reg 0001001woorrrmmm Add Integers with Carry
 Mem,Reg 0001000woorrrmmm Add Integers with Carry
 Reg,Mem 0001001woorrrmmm Add Integers with Carry
 Acc,Imm 0001010w Add Integers with Carry
 Reg,Imm8 1000001woo010mmm Add Integers with Carry
 Mem,Imm8 1000001woo010mmm Add Integers with Carry
 Reg,Imm 1000000woo010mmm Add Integers with Carry
 Mem,Imm 1000000woo010mmm Add Integers with Carry
ADD Reg,Reg 0000001woorrrmmm Add Integers
 Mem,Reg 0000000woorrrmmm Add Integers
 Reg,Mem 0000001woorrrmmm Add Integers
 Acc,Imm 0000010w Add Integers
 Reg,Imm8 1000001woo000mmm Add Integers
 Mem,Imm8 1000001woo000mmm Add Integers
 Reg,Imm 1000000woo000mmm Add Integers
 Mem,Imm 1000000woo000mmm Add Integers
AND Reg,Reg 0010001woorrrmmm Logical AND
 Mem,Reg 0010000woorrrmmm Logical AND
 Reg,Mem 0010001woorrrmmm Logical AND
 Acc,Imm 0010010w Logical AND
 Reg,Imm8 1000001woo100mmm Logical AND
 Mem,Imm8 1000001woo100mmm Logical AND
 Reg,Imm 1000000woo100mmm Logical AND
 Mem,Imm 1000000woo100mmm Logical AND
BSF RegWord,RegWord 0000111110111100oorrrmmm Bit Scan Forward
 RegWord,MemWord 0000111110111100oorrrmmm Bit Scan Forward
BSR RegWord,RegWord 0000111110111101oorrrmmm Bit Scan Reverse
 RegWord,MemWord 0000111110111101oorrrmmm Bit Scan Reverse
BSWAP RegWord 0000111111001rrr Byte swap
BT RegWord,Imm8 0000111110111010oo100mmm Bit Test
 MemWord,Imm8 0000111110111010oo100mmm Bit Test
 RegWord,RegWord 0000111110100011oorrrmmm Bit Test
 MemWord,RegWord 0000111110100011oorrrmmm Bit Test
BTC RegWord,Imm8 0000111110111010oo111mmm Bit Test and Complement
 MemWord,Imm8 0000111110111010oo111mmm Bit Test and Complement
 RegWord,RegWord 0000111110111011oorrrmmm Bit Test and Complement
 MemWord,RegWord 0000111110111011oorrrmmm Bit Test and Complement
BTR RegWord,Imm8 0000111110111010oo110mmm Bit Test and Reset
 MemWord,Imm8 0000111110111010oo110mmm Bit Test and Reset
 RegWord,RegWord 0000111110110011oorrrmmm Bit Test and Reset
 MemWord,RegWord 0000111110110011oorrrmmm Bit Test and Reset
BTS RegWord,Imm8 0000111110111010oo101mmm Bit Test and Set
 MemWord,Imm8 0000111110111010oo101mmm Bit Test and Set
 RegWord,RegWord 0000111110101011oorrrmmm Bit Test and Set
 MemWord,RegWord 0000111110101011oorrrmmm Bit Test and Set
CBW 10011000 Convert Byte to Word
CDQ 10011001 Convert Doubleword to Quad-Word
CLC 11111000 Clear Carry Flag (CF)
CLD 11111100 Clear Direction Flag (DF)
CLI 11111010 Clear Interrupt Flag (IF)
CLTS 0000111100000110 Clear Task-Switched Flag in Control Register Zero
CMC 11110101 Complementer Carry Flag (CF)
CMOVcc Reg,Reg 000011110100ccccoorrrmmm Conditional Move
 Reg,Mem 000011110100ccccoorrrmmm Conditional Move
CMP Reg,Reg 0011101woorrrmmm Compare
 Mem,Reg 0011100woorrrmmm Compare
 Reg,Mem 0011101woorrrmmm Compare
 Acc,Imm 0011110w Compare
 Reg,Imm8 1000001woo111mmm Compare
 Mem,Imm8 1000001woo111mmm Compare
 Reg,Imm 1000000woo111mmm Compare
 Mem,Imm 1000000woo111mmm Compare
CMPSB 10100110 Compare String - Byte
CMPSW 10100111 Compare String - Word
CMPSD 10100111 Compare String - Doubleword
CMPXCHG Reg,Reg 000011111011000woorrrmmm Compare and Exchange
 Mem,Reg 000011111011000woorrrmmm Compare and Exchange
CMPXCHG
8B Mem64 0000111111000111oo001mmm
Compare and Exchange 8 
Bytes
CPUID 0000111110100010 CPU Identification code to EAX
CWD 10011001 Convert Word to Doubleword
CWDE 10011000 Convert Word to Extended Doubleword
DAA 00100111 Decimal Adjust Register After Addition
DAS 00101111
Decimal Adjust AL 
Register After 
Substraction
DEC RegWord 01001rrr Decrement by One
 Reg 1111111woo001mmm Decrement by One
 Mem 1111111woo001mmm Decrement by One
DIV Reg 1111011woo110mmm Unsigned Integer Divide
 Mem 1111011woo110mmm Unsigned Integer Divide
ENTER Imm16,Imm8 11001000 Make Stack Frame for Procedure Parameter
HLT 11110100 Halt
IDIV Reg 1111011woo111mmm Signed Divide
 Mem 1111011woo111mmm Signed Divide
IMUL RegWord,RegWord,Imm8 01101011oorrrmmm Signed Integer Multiply
 RegWord,MemWord,Imm8 01101011oorrrmmm Signed Integer Multiply
 RegWord,RegW 01101001oorrrmmm Signed Integer Multiply
ord,Imm
 RegWord,MemWord,Imm 01101001oorrrmmm Signed Integer Multiply
 RegWord,Imm8 0110101111rrrqqq Signed Integer Multiply
 RegWord,Imm 0110100111rrrqqq Signed Integer Multiply
 RegWord,RegWord 0000111110101111oorrrmmm Signed Integer Multiply
 RegWord,MemWord 0000111110101111oorrrmmm Signed Integer Multiply
 Reg 1111011woo101mmm Signed Integer Multiply
 Mem 1111011woo101mmm Signed Integer Multiply
IN Acc,Imm8 1110010w Input from Port
 Acc,DX 1110110w Input from Port
INC RegWord 01000rrr Increment by 1
 Reg 1111111woo000mmm Increment by 1
 Mem 1111111woo000mmm Increment by 1
INSB 01101100 Input Byte
INSW 01101101 Input Word
INSD 01101101 Input DoubleWord
INT 3 11001100 Call to Interrupt Procedure
 Imm8 11001101 Call to Interrupt Procedure
INTO 11001110 Interrupt on Overflow
INVD 0000111100001000 Invalidate data cache
INVLPG Mem 0000111100000001oo111mmm Invalidate TBL entry
IRET 11001111 Return from Interrupt
IRETD 11001111 Return from Interrupt - 32-bit Mode
LAHF 10011111 Load Flags into AH Register
LAR RegWord,RegWord 0000111100000010oorrrmmm Load Access Rights Byte
 RegWord,MemWord 0000111100000010oorrrmmm Load Access Rights Byte
LDS Reg16,Mem32 11000101oorrrmmm Load Pointer Using DS
 Reg32,Mem64 11000101oorrrmmm Load Pointer Using DS
LES Reg16,Mem32 11000100oorrrmmm Load Pointer Using ES
 Reg32,Mem64 11000100oorrrmmm Load Pointer Using ES
LFS Reg16,Mem32 0000111110110100oorrrmmm Load Pointer Using FS
 Reg32,Mem64 0000111110110100oorrrmmm Load Pointer Using FS
LGS Reg16,Mem32 0000111110110101oorrrmmm Load Pointer Using GS
 Reg32,Mem64 0000111110110101oorrrmmm Load Pointer Using GS
LSS Reg16,Mem32 0000111110110010oorrrmmm Load Pointer Using SS
 Reg32,Mem64 0000111110110010oorrrmmm Load Pointer Using SS
LEA RegWord,Mem 10001101oorrrmmm Load Effective Address
LEAVE 11001001 High Level Procedure Exit
LGDT Mem64 0000111100000001oo010mmm Load Global Descriptor Table
LIDT Mem64 0000111100000001oo011mmm Load Interrupt Descriptor Table
LLDT Reg16 0000111100000000oo010mmmLoad Local Descriptor Table
 Mem16 0000111100000000oo010mmm Load Local Descriptor Table
LMSW Reg16 0000111100000001oo110mmm Load Machine Status Word
 Mem16 0000111100000001oo110mmm Load Machine Status Word
LODSB 10101100 Load Byte
LODSW 10101101 Load Word
LODSD 10101101 Load Doubleword
LSL RegWord,RegWord 0000111100000011oorrrmmm Load Segment Limit
 RegWord,MemWord 0000111100000011oorrrmmm Load Segment Limit
LTR Reg16 0000111100000000oo011mmm Load Task Register
 Mem16 0000111100000000oo011mmm Load Task Register
MOV MemOfs,Acc 1010001w Move Data
 Acc,MemOfs 1010000w Move Data
 Reg,Imm 1011wrrr Move Data
 Mem,Imm 1100011woo000mmm Move Data
 Reg,Reg 1000101woorrrmmm Move Data
 Reg,Mem 1000101woorrrmmm Move Data
 Mem,Reg 1000100woorrrmmm Move Data
 Reg16,Seg 10001100oosssmmm Move Data
 Seg,Reg16 10001110oosssmmm Move Data
 Mem16,Seg 10001100oosssmmm Move Data
 Seg,Mem16 10001110oosssmmm Move Data
 Reg32,CRn 000011110010000011sssrrr Move Data
 CRn,Reg32 000011110010001011sssrrr Move Data
 Reg32,DRn 000011110010000111sssrrr Move Data
 DRn,Reg32 000011110010001111sssrrr Move Data
 Reg32,TRn 000011110010010011sssrrr Move Data
 TRn,Reg32 000011110010011011sssrrr Move Data
MOVSB 10100100 Move Byte
MOVSW 10100101 Move Word
MOVSD 10100101 Move Doubleword
MOVSX RegWord,Reg8 0000111110111110oorrrmmm Move with Sign Extension
 RegWord,Mem8 0000111110111110oorrrmmm Move with Sign Extension
 RegWord,Reg16 0000111110111111oorrrmmm Move with Sign Extension
 RegWord,Mem16 0000111110111111oorrrmmm
Move with Sign 
Extension
MOVZX RegWord,Reg8 0000111110110110oorrrmmm Move with Zero Extension
 RegWord,Mem8 0000111110110110oorrrmmm Move with Zero Extension
 RegWord,Reg16 0000111110110111oorrrmmm Move with Zero Extension
 RegWord,Mem16 0000111110110111oorrrmmm
Move with Zero 
Extension
MUL Reg 1111011woo100mmm
Unsigned Integer 
Multiply of AL, AX or 
EAX
 Mem 1111011woo100mmm
Unsigned Integer 
Multiply of AL, AX or 
EAX
NEG Reg 1111011woo011mmm Negate(Two's Complement)
 Mem 1111011woo011mmm Negate(Two's Complement)
NOP 10010000 No Operation
NOT Reg 1111011woo010mmm Negate(One's Complement)
 Mem 1111011woo010mmm Negate(One's Complement)
OR Reg,Reg 0000101woorrrmmm Logical Inclusive OR
 Mem,Reg 0000100woorrrmmm Logical Inclusive OR
 Reg,Mem 0000101woorrrmmm Logical Inclusive OR
 Acc,Imm 0000110w Logical Inclusive OR
 Reg,Imm8 1000001woo001mmm Logical Inclusive OR
 Mem,Imm8 1000001woo001mmm Logical Inclusive OR
 Reg,Imm 1000000woo001mmm Logical Inclusive OR
 Mem,Imm 1000000woo001mmm Logical Inclusive OR
OUT Imm8,Acc 1110011w Output To Port
 DX,Acc 1110111w Output To Port
OUTSB 01101110 Output Byte
OUTSW 01101111 Output Word
OUTSD 01101111 Output Doubleword
POP RegWord 01011rrr Pop a Word from the Stack
 MemWord 10001111oo000mmm Pop a Word from the Stack
 SegOld 00sss111 Pop a Word from the Stack
 Seg 0000111110sss001 Pop a Word from the Stack
POPA 01100001 POP All Registers
POPAD 01100001 POP All Registers - 32-bit Mode
POPF 10011101 POP Stack into FLAGS
POPFD 10011101 POP Stack into EFLAGS
PUSH RegWord 01010rrr Push Operand onto Stack
 MemWord 11111111oo110mmm Push Operand onto Stack
 SegOld 00sss110 Push Operand onto Stack
 Seg 0000111110sss000 Push Operand onto Stack
 Imm8 01101010 Push Operand onto Stack
 Imm 01101000 Push Operand onto Stack
PUSHW Imm16 01101000 PUSH Word
PUSHD Imm32 01101000 PUSH Double Word
PUSHA 01100000 PUSH All Registers
PUSHAD 01100000 PUSH All Registers - 32-bit Mode
PUSHF 10011100 PUSH FLAGS
PUSHFD 10011100 PUSH EFLAGS
RCL Reg,1 1101000woo010mmm Rotate Left through Carry - Uses CF for Extension
 Mem,1 1101000woo010mmm Rotate Left through Carry - Uses CF for Extension
 Reg,CL 1101001woo010mmm Rotate Left through Carry - Uses CF for Extension
 Mem,CL 1101001woo010mmm Rotate Left through Carry - Uses CF for Extension
 Reg,Imm8 1100000woo010mmm Rotate Left through Carry - Uses CF for Extension
 Mem,Imm8 1100000woo010mmm Rotate Left through Carry - Uses CF for Extension
RCR Reg,1 1101000woo011mmm
Rotate Right through 
Carry - Uses CF for 
Extension
 Mem,1 1101000woo011mmm
Rotate Right through 
Carry - Uses CF for 
Extension
 Reg,CL 1101001woo011mmm
Rotate Right through 
Carry - Uses CF for 
Extension
 Mem,CL 1101001woo011mmm
Rotate Right through 
Carry - Uses CF for 
Extension
 Reg,Imm8 1100000woo011mmm
Rotate Right through 
Carry - Uses CF for 
Extension
 Mem,Imm8 1100000woo011mmm
Rotate Right through 
Carry - Uses CF for 
Extension
RDMSR 0000111100110010 Read from Model Specific Register
RET NEAR 11000011 Return from subprocedure
RET imm NEAR 11000010 Return from subprocedure
RET FAR 11001011 Return from subprocedure
RET imm FAR 11001010 Return from subprocedure
RDPMC 0000111100110011 Read Performance Monitor Counter
ROL Reg,1 1101000woo000mmm Rotate Left through Carry - Wrap bits around
 Mem,1 1101000woo000mmm Rotate Left through Carry - Wrap bits around
 Reg,CL 1101001woo000mmm Rotate Left through Carry - Wrap bits around
 Mem,CL 1101001woo000mmm Rotate Left through Carry - Wrap bits around
 Reg,Imm8 1100000woo000mmm Rotate Left through Carry - Wrap bits around
 Mem,Imm8 1100000woo000mmm Rotate Left through Carry - Wrap bits around
ROR Reg,1 1101000woo001mmm Rotate Right through Carry - Wrap bits around
 Mem,1 1101000woo001mmm Rotate Right through 
Carry - Wrap bits around
 Reg,CL 1101001woo001mmm Rotate Right through Carry - Wrap bits around
 Mem,CL 1101001woo001mmm Rotate Right through Carry - Wrap bits around
 Reg,Imm8 1100000woo001mmm Rotate Right through Carry - Wrap bits around
 Mem,Imm8 1100000woo001mmm Rotate Right through Carry - Wrap bits around
RSM 0000111110101010 Return from System Management mode
SALC 11010110 Set AL on Carry
SAHF 10011110 Load Flags into AH Register
SAL Reg,1 1101000woo100mmm Shift Arithmetic Left
 Mem,1 1101000woo100mmm Shift Arithmetic Left
 Reg,CL 1101001woo100mmm Shift Arithmetic Left
 Mem,CL 1101001woo100mmm Shift Arithmetic Left
 Reg,Imm8 1100000woo100mmm Shift Arithmetic Left
 Mem,Imm8 1100000woo100mmm Shift Arithmetic Left
SAR Reg,1 1101000woo111mmm Shift Arithmetic Right
 Mem,1 1101000woo111mmm Shift Arithmetic Right
 Reg,CL 1101001woo111mmm Shift Arithmetic Right
 Mem,CL 1101001woo111mmm Shift Arithmetic Right
 Reg,Imm8 1100000woo111mmm Shift Arithmetic Right
 Mem,Imm8 1100000woo111mmm Shift Arithmetic Right
SETcc Reg8 000011111001ccccoo000mmm Set Byte on Condition Code
 Mem8 000011111001ccccoo000mmm Set Byte on Condition Code
SHL Reg,1 1101000woo100mmm Shift Logic Left
 Mem,1 1101000woo100mmm Shift Logic Left
 Reg,CL 1101001woo100mmm Shift Logic Left
 Mem,CL 1101001woo100mmm Shift Logic Left
 Reg,Imm8 1100000woo100mmm Shift Logic Left
 Mem,Imm8 1100000woo100mmm Shift Logic Left
SHR Reg,1 1101000woo101mmm Shift Logic Right
 Mem,1 1101000woo101mmm Shift Logic Right
 Reg,CL 1101001woo101mmm Shift Logic Right
 Mem,CL 1101001woo101mmm Shift Logic Right
 Reg,Imm8 1100000woo101mmm Shift Logic Right
 Mem,Imm8 1100000woo101mmm Shift Logic Right
SBB Reg,Reg 0001101woorrrmmm Substract Integers with Borrow
 Mem,Reg 0001100woorrrmmm Substract Integers with Borrow
 Reg,Mem 0001101woorrrmmm Substract Integers with Borrow
 Acc,Imm 0001110w Substract Integers with Borrow
 Reg,Imm8 1000001woo011mmm Substract Integers with Borrow
 Mem,Imm8 1000001woo011mmm Substract Integers with Borrow
 Reg,Imm 1000000woo011mmm Substract Integers with Borrow
 Mem,Imm 1000000woo011mmm Substract Integers with Borrow
SCASB 10101110 Compare Byte
SCASW 10101111 Compare Word
SCASD 10101111 Compare Doubleword
SGDT Mem64 0000111100000001oo000mmm Store Global Descriptor TableSHLD RegWord,RegWord,Imm8 0000111110100100oorrrmmm
Double Precision Shift 
Left
 MemWord,RegWord,Imm8 0000111110100100oorrrmmm
Double Precision Shift 
Left
 RegWord,RegWord,CL 0000111110100101oorrrmmm
Double Precision Shift 
Left
 MemWord,RegWord,CL 0000111110100101oorrrmmm
Double Precision Shift 
Left
SHRD RegWord,RegWord,Imm8 0000111110101100oorrrmmm
Double Precision Shift 
Right
 MemWord,RegWord,Imm8 0000111110101100oorrrmmm
Double Precision Shift 
Right
 RegWord,RegWord,CL 0000111110101101oorrrmmm
Double Precision Shift 
Right
 MemWord,RegWord,CL 0000111110101101oorrrmmm
Double Precision Shift 
Right
SIDT Mem64 0000111100000001oo001mmm Store Interrupt Descriptor Table
SLDT Reg16 0000111100000000oo000mmm Store Local Descriptor Table Register (LDTR)
 Mem16 0000111100000000oo000mmm Store Local Descriptor Table Register (LDTR)
SMSW Reg16 0000111100000001oo100mmm Store Machine Status Word
 Mem16 0000111100000001oo100mmm Store Machine Status Word
STC 11111001 Set Carry Flag(CF)
STD 11111101 Set Direction Flag(DF)
STI 11111011 Set Interrupt Flag(IF)
STOSB 10101010 Store String Data Byte
STOSW 10101011 Store String Data Word
STOSD 10101011 Store String Data DoubleWord
STR Reg16 0000111100000000oo001mmm Store Task Register
 Mem16 0000111100000000oo001mmm Store Task Register
SUB Reg,Reg 0010101woorrrmmm Subtract
 Mem,Reg 0010100woorrrmmm Subtract
 Reg,Mem 0010101woorrrmmm Subtract
 Acc,Imm 0010110w Subtract
 Reg,Imm8 1000001woo101mmm Subtract
 Mem,Imm8 1000001woo101mmm Subtract
 Reg,Imm 1000000woo101mmm Subtract
 Mem,Imm 1000000woo101mmm Subtract
TEST Reg,Reg 1000010woorrrmmm Test Operands
 Mem,Reg 1000010woorrrmmm Test Operands
 Reg,Mem 1000010woorrrmmm Test Operands
 Acc,Imm 1010100w Test Operands
 Reg,Imm 1111011woo000mmm Test Operands
 Mem,Imm 1111011woo000mmm Test Operands
VERR Reg16 0000111100000000oo100mmm Verify Read
 Mem16 0000111100000000oo100mmm Verify Read
VERW Reg16 0000111100000000oo101mmm Verify Write
 Mem16 0000111100000000oo101mmm Verify Write
WAIT 10011011 Wait for FPU
WBINVD 0000111100001001 Write Back and Invalidate Data Cache
WRMSR 0000111100110000 Write to Model Specific Register
XADD Reg,Reg 000011111100000woorrrmmm Exchange and Add
 Mem,Reg 000011111100000woorrrmmm Exchange and Add
XCHG AccWord,RegWord 10010rrr Exchange
 RegWord,AccWord 10010rrr Exchange
 Reg,Reg 1000011woorrrmmm Exchange
 Mem,Reg 1000011woorrrmmm Exchange
 Reg,Mem 1000011woorrrmmm Exchange
XLAT 11010111 Translate
XOR Reg,Reg 0011001woorrrmmm Exclusive-OR
 Mem,Reg 0011000woorrrmmm Exclusive-OR
 Reg,Mem 0011001woorrrmmm Exclusive-OR
 Acc,Imm 0011010w Exclusive-OR
 Reg,Imm8 1000001woo110mmm Exclusive-OR
 Mem,Imm8 1000001woo110mmm Exclusive-OR
 Reg,Imm 1000000woo110mmm Exclusive-OR
 Mem,Imm 1000000woo110mmm Exclusive-OR
CALL MemFar 11111111oo011mmm Call a Procedure
 Near 11101000 Call a Procedure
 Far 10011010 Call a Procedure
 RegWord 11111111oo010mmm Call a Procedure
 MemNear 11111111oo010mmm Call a Procedure
Jcc Short 0111cccc Jump on Some Condition Code
 Near 000011111000cccc Jump on Some Condition Code
JCXZ Short 11100011 
JCXE Short 11100011 
JECXZ Short 11100011 
JECXE Short 11100011 
JMP MemFar 11111111oo101mmm 
 Short 11101011 
 Near 11101001 
 Far 11101010 
 RegWord 11111111oo100mmm 
 MemNear 11111111oo100mmm 
LOOP Short 11100010 Loop Control While ECX Counter Not Zero
LOOPZ Short 11100001 Loop while Zero
LOOPE Short 11100001 Loop while Equal
LOOPNZ Short 11100000 Loop while Not Zero
LOOPNE Short 11100000 Loop while Not Equal
LOCK 11110000 Assert Lock# Signal Prefix
LOCK: 11110000 Assert Lock# Signal Prefix
REP 11110011 Repeat Following String Operation
REPE 11110011 Repeat while Equal
REPZ 11110011 Repeat while Zero
REPNE 11110010 Repeat while Not Equal
REPNZ 11110010 Repeat while Not Zero
CS: 00101110 CS segment override prefix
DS: 00111110 DS segment override prefix
ES: 00100110 ES segment override prefix
FS: 01100100 FS segment override prefix
GS: 01100101 GS segment override prefix
SS: 00110110 SS segment override prefix
	Instructions and opcodes

Outros materiais