IA-32 architecture opcode groups
mod R/M |
xx000xxx |
xx001xxx |
xx010xxx |
xx011xxx |
xx100xxx |
xx101xxx |
xx110xxx |
xx111xxx |
group #1 (80..83h) |
ADD |
OR |
ADC |
SBB |
AND |
SUB |
XOR |
CMP |
group #2 (C0..C1h) (D0..D3h) |
ROL |
ROR |
RCL |
RCR |
SHL |
SHR |
SAL* |
SAR |
group #3 (F6..F7h) |
TEST Ib/Iz |
TEST* Ib/Iz |
NOT |
NEG |
MUL AL/rAX |
IMUL AL/rAX |
DIV AL/rAX |
IDIV AL/rAX |
group #4 (FEh) |
INC Eb |
DEC Eb |
|
|
|
|
|
|
group #5 (FFh) |
INC Ev |
DEC Ev |
CALL Ev |
CALL Mp |
JMP Ev |
JMP Mp |
PUSH Ev |
|
group #6 (0Fh,00h) |
SLDT Mw SLDT Rv |
STR Mw STR Rv |
LLDT Mw LLDT Rv |
LTR Mw LTR Rv |
VERR Mw VERR Rv |
VERW Mw VERW Rv |
JMPE Ev (IA-64) |
|
group #7 (0Fh,01h) |
SGDT Ms |
SIDT Ms |
LGDT Ms |
LIDT Ms |
SMSW Mw |
|
LMSW Mw |
INVLPG M (80486+) |
VMCALL (C1h)
VMLAUNCH (C2h)
VMRESUME (C3h)
VMXOFF (C4h)
(see CPUID)
|
MONITOR (C8h)
MWAIT (C9h)
(see CPUID)
|
XGETBV (D0h)
XSETBV (D1h)
(see CPUID)
|
VMRUN (D8h)
VMMCALL (D9h)
VMLOAD (DAh)
VMSAVE (DBh)
STGI (DCh)
CLGI (DDh)
SKINIT (DEh)
INVLPGA (DFh)
(see CPUID)
|
SMSW Rv |
|
LMSW Rv |
SWAPGS (F8h)
(see CPUID)
RDTSCP (F9h)
(see CPUID)
|
group #8 (0Fh,BAh) |
|
|
|
|
BT |
BTS |
BTR |
BTC |
group #9 (0Fh,C7h) |
|
CMPXCHG Mq (see CPUID) |
|
|
|
|
VMPTRLD Mq
(66h) VMCLEAR Mq
(F3h) VMXON Mq
(see CPUID)
|
VMPTRST Mq
(see CPUID)
|
group #10 (8Fh) |
POP Ev |
|
|
|
|
|
|
|
group #11 (0Fh,B9h) |
UD2 |
UD2 |
UD2 |
UD2 |
UD2 |
UD2 |
UD2 |
UD2 |
group #12 (C6h) (C7h) |
MOV |
|
|
|
|
|
|
|
group #13 (0Fh,71h) |
|
|
PSRLW PRq,Ib (MMX) (66h) PSRLW VRo,Ib (SSE2) |
|
PSRAW PRq,Ib (MMX) (66h) PSRAW VRo,Ib (SSE2) |
|
PSLLW PRq,Ib (MMX) (66h) PSLLW VRo,Ib (SSE2) |
|
group #14 (0Fh,72h) |
|
|
PSRLD PRq,Ib (MMX) (66h) PSRLD VRo,Ib (SSE2) |
|
PSRAD PRq,Ib (MMX) (66h) PSRAD VRo,Ib (SSE2) |
|
PSLLD PRq,Ib (MMX) (66h) PSLLD VRo,Ib (SSE2) |
|
group #15 (0Fh,73h) |
|
|
PSRLQ PRq,Ib (MMX) (66h) PSRLQ VRo,Ib (SSE2) |
(66h) PSRLDQ VRo,Ib (SSE2) |
|
|
PSLLQ PRq,Ib (MMX) (66h) PSLLQ VRo,Ib (SSE2) |
(66h) PSLLDQ VRo,Ib (SSE2) |
group #16 (0Fh,AEh) |
FXSAVE M512 (see CPUID) |
FXRSTOR M512 (see CPUID) |
LDMXCSR Md (SSE) |
STMXCSR Md (SSE) |
XSAVE M (see CPUID) |
XRSTOR M (see CPUID) LFENCE (SSE2-MEM) |
MFENCE (SSE2-MEM) |
CLFLUSH M (see CPUID) SFENCE (SSE-MEM) |
group #17 (0Fh,18h) |
PREFETCH- NTA M (SSE-MEM) |
PREFETCH- T0 M (SSE-MEM) |
PREFETCH- T1 M (SSE-MEM) |
PREFETCH- T2 M (SSE-MEM) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,19h) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,1Ah) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,1Bh) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,1Ch) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,1Dh) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,1Eh) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
group #17 (0Fh,1Fh) |
NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
HINT_NOP Ev (P6+) |
note: The opcodes marked with * are aliases to other opcodes.
|