| pf | 0F | po | so | o | proc | st | m | rl | x | mnemonic | op1 | op2 | op3 | op4 | iext | tested f | modif f | def f | undef f | f values | description, notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 00 | r | L | ADD | r/m8 | r8 | o..szapc | o..szapc | Add | |||||||||||||
| 01 | r | L | ADD | r/m16/32/64 | r16/32/64 | o..szapc | o..szapc | Add | |||||||||||||
| 02 | r | ADD | r8 | r/m8 | o..szapc | o..szapc | Add | ||||||||||||||
| 03 | r | ADD | r16/32/64 | r/m16/32/64 | o..szapc | o..szapc | Add | ||||||||||||||
| 04 | ADD | AL | imm8 | o..szapc | o..szapc | Add | |||||||||||||||
| 05 | ADD | rAX | imm16/32 | o..szapc | o..szapc | Add | |||||||||||||||
| 06 | PUSH | ES | Push Word, Doubleword or Quadword Onto the Stack | ||||||||||||||||||
| 06 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 07 | POP | ES | Pop a Value from the Stack | ||||||||||||||||||
| 07 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 08 | r | L | OR | r/m8 | r8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||
| 09 | r | L | OR | r/m16/32/64 | r16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||
| 0A | r | OR | r8 | r/m8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | ||||||||||||
| 0B | r | OR | r16/32/64 | r/m16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | ||||||||||||
| 0C | OR | AL | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||||
| 0D | OR | rAX | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||||
| 0E | PUSH | CS | Push Word, Doubleword or Quadword Onto the Stack | ||||||||||||||||||
| 0E | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 0F | 02+ | Two-byte Instructions | |||||||||||||||||||
| 10 | r | L | ADC | r/m8 | r8 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||
| 11 | r | L | ADC | r/m16/32/64 | r16/32/64 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||
| 12 | r | ADC | r8 | r/m8 | .......c | o..szapc | o..szapc | Add with Carry | |||||||||||||
| 13 | r | ADC | r16/32/64 | r/m16/32/64 | .......c | o..szapc | o..szapc | Add with Carry | |||||||||||||
| 14 | ADC | AL | imm8 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||||
| 15 | ADC | rAX | imm16/32 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||||
| 16 | PUSH | SS | Push Word, Doubleword or Quadword Onto the Stack | ||||||||||||||||||
| 16 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 17 | POP | SS | Pop a Value from the Stack | ||||||||||||||||||
| 17 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 18 | r | L | SBB | r/m8 | r8 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||
| 19 | r | L | SBB | r/m16/32/64 | r16/32/64 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||
| 1A | r | SBB | r8 | r/m8 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | |||||||||||||
| 1B | r | SBB | r16/32/64 | r/m16/32/64 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | |||||||||||||
| 1C | SBB | AL | imm8 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||||
| 1D | SBB | rAX | imm16/32 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||||
| 1E | PUSH | DS | Push Word, Doubleword or Quadword Onto the Stack | ||||||||||||||||||
| 1E | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 1F | POP | DS | Pop a Value from the Stack | ||||||||||||||||||
| 1F | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 20 | r | L | AND | r/m8 | r8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||
| 21 | r | L | AND | r/m16/32/64 | r16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||
| 22 | r | AND | r8 | r/m8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | ||||||||||||
| 23 | r | AND | r16/32/64 | r/m16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | ||||||||||||
| 24 | AND | AL | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||||
| 25 | AND | rAX | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||||
| 26 | ES | ES | ES segment override prefix | ||||||||||||||||||
| 26 | P4+ | undefined | (use with any branch instruction is reserved) | ||||||||||||||||||
| 26 | P4+ | E | null | Null Prefix in 64-bit Mode | |||||||||||||||||
| 27 | DAA | AL | .....a.c | o..szapc | ...szapc | o....... | Decimal Adjust AL after Addition | ||||||||||||||
| 27 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 28 | r | L | SUB | r/m8 | r8 | o..szapc | o..szapc | Subtract | |||||||||||||
| 29 | r | L | SUB | r/m16/32/64 | r16/32/64 | o..szapc | o..szapc | Subtract | |||||||||||||
| 2A | r | SUB | r8 | r/m8 | o..szapc | o..szapc | Subtract | ||||||||||||||
| 2B | r | SUB | r16/32/64 | r/m16/32/64 | o..szapc | o..szapc | Subtract | ||||||||||||||
| 2C | SUB | AL | imm8 | o..szapc | o..szapc | Subtract | |||||||||||||||
| 2D | SUB | rAX | imm16/32 | o..szapc | o..szapc | Subtract | |||||||||||||||
| 2E | CS | CS | CS segment override prefix | ||||||||||||||||||
| 2E | P4+ | NTAKEN | Branch not taken prefix (used only with Jcc instructions) | ||||||||||||||||||
| 2E | P4+ | E | undefined | (branch hint prefixes have no effect in 64-bit mode) | |||||||||||||||||
| 2E | P4+ | E | null | Null Prefix in 64-bit Mode | |||||||||||||||||
| 2F | DAS | AL | .....a.c | o..szapc | ...szapc | o....... | Decimal Adjust AL after Subtraction | ||||||||||||||
| 2F | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 30 | r | L | XOR | r/m8 | r8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||
| 31 | r | L | XOR | r/m16/32/64 | r16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||
| 32 | r | XOR | r8 | r/m8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | ||||||||||||
| 33 | r | XOR | r16/32/64 | r/m16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | ||||||||||||
| 34 | XOR | AL | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||||
| 35 | XOR | rAX | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||||
| 36 | SS | SS | SS segment override prefix | ||||||||||||||||||
| 36 | P4+ | undefined | (use with any branch instruction is reserved) | ||||||||||||||||||
| 36 | P4+ | E | null | Null Prefix in 64-bit Mode | |||||||||||||||||
| 37 | AAA | AL | AH | .....a.. | o..szapc | .....a.c | o..sz.p. | ASCII Adjust After Addition | |||||||||||||
| 37 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 38 | r | CMP | r/m8 | r8 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 39 | r | CMP | r/m16/32/64 | r16/32/64 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 3A | r | CMP | r8 | r/m8 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 3B | r | CMP | r16/32/64 | r/m16/32/64 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 3C | CMP | AL | imm8 | o..szapc | o..szapc | Compare Two Operands | |||||||||||||||
| 3D | CMP | rAX | imm16/32 | o..szapc | o..szapc | Compare Two Operands | |||||||||||||||
| 3E | DS | DS | DS segment override prefix | ||||||||||||||||||
| 3E | P4+ | TAKEN | Branch taken prefix (used only with Jcc instructions) | ||||||||||||||||||
| 3E | P4+ | E | undefined | (branch hint prefixes have no effect in 64-bit mode) | |||||||||||||||||
| 3E | P4+ | E | null | Null Prefix in 64-bit Mode | |||||||||||||||||
| 3F | AAS | AL | AH | .....a.. | o..szapc | .....a.c | o..sz.p. | ASCII Adjust AL After Subtraction | |||||||||||||
| 3F | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 40+r | INC | r16/32 | o..szap. | o..szap. | Increment by 1 | ||||||||||||||||
| 40 | P4+ | E | REX | Access to new 8-bit registers | |||||||||||||||||
| 41 | P4+ | E | REX.B | Extension of the r/m field, base field, or opcode reg field | |||||||||||||||||
| 42 | P4+ | E | REX.X | Extension of the SIB index field | |||||||||||||||||
| 43 | P4+ | E | REX.XB | REX.X and REX.B combination | |||||||||||||||||
| 44 | P4+ | E | REX.R | Extension of the ModR/M reg field | |||||||||||||||||
| 45 | P4+ | E | REX.RB | REX.R and REX.B combination | |||||||||||||||||
| 46 | P4+ | E | REX.RX | REX.R and REX.X combination | |||||||||||||||||
| 47 | P4+ | E | REX.RXB | REX.R, REX.X and REX.B combination | |||||||||||||||||
| 48+r | DEC | r16/32 | o..szap. | o..szap. | Decrement by 1 | ||||||||||||||||
| 48 | P4+ | E | REX.W | 64 Bit Operand Size | |||||||||||||||||
| 49 | P4+ | E | REX.WB | REX.W and REX.B combination | |||||||||||||||||
| 4A | P4+ | E | REX.WX | REX.W and REX.X combination | |||||||||||||||||
| 4B | P4+ | E | REX.WXB | REX.W, REX.X and REX.B combination | |||||||||||||||||
| 4C | P4+ | E | REX.WR | REX.W and REX.R combination | |||||||||||||||||
| 4D | P4+ | E | REX.WRB | REX.W, REX.R and REX.B combination | |||||||||||||||||
| 4E | P4+ | E | REX.WRX | REX.W, REX.R and REX.X combination | |||||||||||||||||
| 4F | P4+ | E | REX.WRXB | REX.W, REX.R, REX.X and REX.B combination | |||||||||||||||||
| 50+r | PUSH | r16/32 | Push Word, Doubleword or Quadword Onto the Stack | ||||||||||||||||||
| 50+r | P4+ | E | PUSH | r64/16 | Push Word, Doubleword or Quadword Onto the Stack | ||||||||||||||||
| 58+r | POP | r16/32 | Pop a Value from the Stack | ||||||||||||||||||
| 58+r | P4+ | E | POP | r64/16 | Pop a Value from the Stack | ||||||||||||||||
| 60 | 01+ | PUSHA | AX | CX | DX | ... | Push All General-Purpose Registers | ||||||||||||||
| 60 | 03+ | PUSHA | AX | CX | DX | ... | Push All General-Purpose Registers | ||||||||||||||
| PUSHAD | EAX | ECX | EDX | ... | |||||||||||||||||
| 60 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 61 | 01+ | POPA | DI | SI | BP | ... | Pop All General-Purpose Registers | ||||||||||||||
| 61 | 03+ | POPA | DI | SI | BP | ... | Pop All General-Purpose Registers | ||||||||||||||
| POPAD | EDI | ESI | EBP | ... | |||||||||||||||||
| 61 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 62 | r | 01+ | f | BOUND | r16/32 | m16/32&16/32 | eFlags | ..i..... | ..i..... | ..i..... | Check Array Index Against Bounds | ||||||||||
| 62 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 63 | r | 02+ | ARPL | r/m16 | r16 | ....z... | ....z... | Adjust RPL Field of Segment Selector | |||||||||||||
| 63 | r | P4+ | E | MOVSXD | r32/64 | r/m32 | Move with Sign-Extension | ||||||||||||||
| 64 | 03+ | FS | FS | FS segment override prefix | |||||||||||||||||
| 64 | P4+ | undefined | (used only with Jcc instructions) | ||||||||||||||||||
| 64 | P4+ | U1 | ALTER | Alternating branch prefix (used only with Jcc instructions) | |||||||||||||||||
| 64 | P4+ | E | undefined | (branch hint prefixes have no effect in 64-bit mode) | |||||||||||||||||
| 65 | 03+ | GS | GS | GS segment override prefix | |||||||||||||||||
| 65 | P4+ | undefined | (used only with Jcc instructions) | ||||||||||||||||||
| 66 | no mnemonic | Operand-size override prefix | |||||||||||||||||||
| 66 | P4+ | M | no mnemonic | sse2 | Precision-size override prefix | ||||||||||||||||
| 67 | no mnemonic | Address-size override prefix | |||||||||||||||||||
| 68 | 01+ | PUSH | imm16/32 | Push Word, Doubleword or Quadword Onto the Stack | |||||||||||||||||
| 69 | 01+ | IMUL | r16/32/64 | r/m16/32/64 | imm16/32 | o..szapc | o......c | ...szap. | Signed Multiply | ||||||||||||
| 6A | 01+ | PUSH | imm8 | Push Word, Doubleword or Quadword Onto the Stack | |||||||||||||||||
| 6B | 01+ | IMUL | r16/32/64 | r/m16/32/64 | imm8 | o..szapc | o......c | ...szap. | Signed Multiply | ||||||||||||
| 6C | 01+ | f1 | INS | m8 | DX | .d...... | Input from Port to String | ||||||||||||||
| INSB | m8 | DX | |||||||||||||||||||
| 6D | 01+ | f1 | INS | m16 | DX | .d...... | Input from Port to String | ||||||||||||||
| INSW | m16 | DX | |||||||||||||||||||
| 6D | 03+ | f1 | INS | m16/32 | DX | .d...... | Input from Port to String | ||||||||||||||
| INSD | m32 | DX | |||||||||||||||||||
| 6E | 01+ | f1 | OUTS | DX | m8 | .d...... | Output String to Port | ||||||||||||||
| OUTSB | DX | m8 | |||||||||||||||||||
| 6F | 01+ | f1 | OUTS | DX | m16 | .d...... | Output String to Port | ||||||||||||||
| OUTSW | DX | m16 | |||||||||||||||||||
| 6F | 03+ | f1 | OUTS | DX | m16/32 | .d...... | Output String to Port | ||||||||||||||
| OUTSD | DX | m32 | |||||||||||||||||||
| 70 | JO | rel8 | o....... | Jump short if overflow (OF=1) | |||||||||||||||||
| 71 | JNO | rel8 | o....... | Jump short if not overflow (OF=0) | |||||||||||||||||
| 72 | JB | rel8 | .......c | Jump short if below/not above or equal/carry (CF=1) | |||||||||||||||||
| JNAE | rel8 | ||||||||||||||||||||
| JC | rel8 | ||||||||||||||||||||
| 73 | JNB | rel8 | .......c | Jump short if not below/above or equal/not carry (CF=0) | |||||||||||||||||
| JAE | rel8 | ||||||||||||||||||||
| JNC | rel8 | ||||||||||||||||||||
| 74 | JZ | rel8 | ....z... | Jump short if zero/equal (ZF=0) | |||||||||||||||||
| JE | rel8 | ||||||||||||||||||||
| 75 | JNZ | rel8 | ....z... | Jump short if not zero/not equal (ZF=1) | |||||||||||||||||
| JNE | rel8 | ||||||||||||||||||||
| 76 | JBE | rel8 | ....z..c | Jump short if below or equal/not above (CF=1 AND ZF=1) | |||||||||||||||||
| JNA | rel8 | ||||||||||||||||||||
| 77 | JNBE | rel8 | ....z..c | Jump short if not below or equal/above (CF=0 AND ZF=0) | |||||||||||||||||
| JA | rel8 | ||||||||||||||||||||
| 78 | JS | rel8 | ...s.... | Jump short if sign (SF=1) | |||||||||||||||||
| 79 | JNS | rel8 | ...s.... | Jump short if not sign (SF=0) | |||||||||||||||||
| 7A | JP | rel8 | ......p. | Jump short if parity/parity even (PF=1) | |||||||||||||||||
| JPE | rel8 | ||||||||||||||||||||
| 7B | JNP | rel8 | ......p. | Jump short if not parity/parity odd | |||||||||||||||||
| JPO | rel8 | ||||||||||||||||||||
| 7C | JL | rel8 | o..s.... | Jump short if less/not greater (SF!=OF) | |||||||||||||||||
| JNGE | rel8 | ||||||||||||||||||||
| 7D | JNL | rel8 | o..s.... | Jump short if not less/greater or equal (SF=OF) | |||||||||||||||||
| JGE | rel8 | ||||||||||||||||||||
| 7E | JLE | rel8 | o..sz... | Jump short if less or equal/not greater ((ZF=1) OR (SF!=OF)) | |||||||||||||||||
| JNG | rel8 | ||||||||||||||||||||
| 7F | JNLE | rel8 | o..sz... | Jump short if not less nor equal/greater ((ZF=0) AND (SF=OF)) | |||||||||||||||||
| JG | rel8 | ||||||||||||||||||||
| 80 | 0 | L | ADD | r/m8 | imm8 | o..szapc | o..szapc | Add | |||||||||||||
| 80 | 1 | L | OR | r/m8 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||
| 80 | 2 | L | ADC | r/m8 | imm8 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||
| 80 | 3 | L | SBB | r/m8 | imm8 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||
| 80 | 4 | L | AND | r/m8 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||
| 80 | 5 | L | SUB | r/m8 | imm8 | o..szapc | o..szapc | Subtract | |||||||||||||
| 80 | 6 | L | XOR | r/m8 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||
| 80 | 7 | CMP | r/m8 | imm8 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 81 | 0 | L | ADD | r/m16/32/64 | imm16/32 | o..szapc | o..szapc | Add | |||||||||||||
| 81 | 1 | L | OR | r/m16/32/64 | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||
| 81 | 2 | L | ADC | r/m16/32/64 | imm16/32 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||
| 81 | 3 | L | SBB | r/m16/32/64 | imm16/32 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||
| 81 | 4 | L | AND | r/m16/32/64 | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||
| 81 | 5 | L | SUB | r/m16/32/64 | imm16/32 | o..szapc | o..szapc | Subtract | |||||||||||||
| 81 | 6 | L | XOR | r/m16/32/64 | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||
| 81 | 7 | CMP | r/m16/32/64 | imm16/32 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 82 | 0 | L | ADD | r/m8 | imm8 | o..szapc | o..szapc | Add | |||||||||||||
| 82 | 1 | L | OR | r/m8 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | |||||||||||
| 82 | 2 | L | ADC | r/m8 | imm8 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||
| 82 | 3 | L | SBB | r/m8 | imm8 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||
| 82 | 4 | L | AND | r/m8 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | |||||||||||
| 82 | 5 | L | SUB | r/m8 | imm8 | o..szapc | o..szapc | Subtract | |||||||||||||
| 82 | 6 | L | XOR | r/m8 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | |||||||||||
| 82 | 7 | CMP | r/m8 | imm8 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 82 | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 83 | 0 | L | ADD | r/m16/32/64 | imm8 | o..szapc | o..szapc | Add | |||||||||||||
| 83 | 1 | 03+ | L | OR | r/m16/32/64 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Inclusive OR | ||||||||||
| 83 | 2 | L | ADC | r/m16/32/64 | imm8 | .......c | o..szapc | o..szapc | Add with Carry | ||||||||||||
| 83 | 3 | L | SBB | r/m16/32/64 | imm8 | .......c | o..szapc | o..szapc | Integer Subtraction with Borrow | ||||||||||||
| 83 | 4 | 03+ | L | AND | r/m16/32/64 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical AND | ||||||||||
| 83 | 5 | L | SUB | r/m16/32/64 | imm8 | o..szapc | o..szapc | Subtract | |||||||||||||
| 83 | 6 | 03+ | L | XOR | r/m16/32/64 | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Exclusive OR | ||||||||||
| 83 | 7 | CMP | r/m16/32/64 | imm8 | o..szapc | o..szapc | Compare Two Operands | ||||||||||||||
| 84 | r | TEST | r/m8 | r8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Compare | ||||||||||||
| 85 | r | TEST | r/m16/32/64 | r16/32/64 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Compare | ||||||||||||
| 86 | r | L | XCHG | r8 | r/m8 | Exchange Register/Memory with Register | |||||||||||||||
| 87 | r | L | XCHG | r16/32/64 | r/m16/32/64 | Exchange Register/Memory with Register | |||||||||||||||
| 88 | r | MOV | r/m8 | r8 | Move | ||||||||||||||||
| 89 | r | MOV | r/m16/32/64 | r16/32/64 | Move | ||||||||||||||||
| 8A | r | MOV | r8 | r/m8 | Move | ||||||||||||||||
| 8B | r | MOV | r16/32/64 | r/m16/32/64 | Move | ||||||||||||||||
| 8C | r | MOV | r/m16/32/64 | Sreg | Move | ||||||||||||||||
| 8D | r | LEA | r16/32/64 | m | Load Effective Address | ||||||||||||||||
| 8E | r | MOV | Sreg | r/m16/32/64 | Move | ||||||||||||||||
| 8F | 0 | POP | r/m16/32 | Pop a Value from the Stack | |||||||||||||||||
| 8F | 0 | P4+ | E | POP | r/m64/16 | Pop a Value from the Stack | |||||||||||||||
| 90+r | XCHG | r16/32/64 | rAX | Exchange Register/Memory with Register | |||||||||||||||||
| 90 | NOP | No Operation | |||||||||||||||||||
| F3 | 90 | D2 | no mnemonic nop | No Operation | |||||||||||||||||
| F3 | 90 | P4+ | PAUSE | sse2 | Spin Loop Hint | ||||||||||||||||
| 98 | CBW | AH | AL | Convert Byte to Word | |||||||||||||||||
| 98 | 03+ | CWDE | EAX | AX | Convert Word to Doubleword | ||||||||||||||||
| 98 | P4+ | E | CBW | AH | AL | Convert | |||||||||||||||
| CWDE | EAX | AX | |||||||||||||||||||
| CDQE | RAX | EAX | |||||||||||||||||||
| 99 | CWD | DX | AX | Convert Word to Doubleword | |||||||||||||||||
| 99 | 03+ | CDQ | EDX | EAX | Convert Doubleword to Quadword | ||||||||||||||||
| 99 | P4+ | E | CWD | DX | AX | Convert | |||||||||||||||
| CDQ | EDX | EAX | |||||||||||||||||||
| CQO | RDX | RAX | |||||||||||||||||||
| 9A | CALLF | ptr16:16/32 | Call Procedure | ||||||||||||||||||
| 9A | P4+ | E | invalid | Invalid Instruction in 64-Bit Mode | |||||||||||||||||
| 9B | FWAIT | 0123 | 0123 | Check pending unmasked floating-point exceptions | |||||||||||||||||
| WAIT | |||||||||||||||||||||
| 9B | no mnemonic | 0123 | 0123 | Wait Prefix | |||||||||||||||||
| 9C | PUSHF | Flags | odiszapc | Push FLAGS Register onto the Stack | |||||||||||||||||
| 9C | 03+ | PUSHF | Flags | odiszapc | Push eFLAGS Register onto the Stack | ||||||||||||||||
| PUSHFD | EFlags | ||||||||||||||||||||
| 9C | P4+ | E | PUSHF | Flags | odiszapc | Push rFLAGS Register onto the Stack | |||||||||||||||
| PUSHFQ | RFlags | ||||||||||||||||||||
| 9D | POPF | Flags | odiszapc | odiszapc | Pop Stack into FLAGS Register | ||||||||||||||||
| 9D | 03+ | POPF | Flags | odiszapc | odiszapc | Pop Stack into eFLAGS Register | |||||||||||||||
| POPFD | EFlags | ||||||||||||||||||||
| 9D | P4+ | E | POPF | Flags | odiszapc | odiszapc | Pop Stack into rFLAGS Register | ||||||||||||||
| POPFQ | RFlags | ||||||||||||||||||||
| 9E | D3 | SAHF | AH | ...szapc | ...szapc | Store AH into Flags | |||||||||||||||
| 9F | D3 | LAHF | AH | ...szapc | Load Status Flags into AH Register | ||||||||||||||||
| A0 | MOV | AL | moffs8 | Move | |||||||||||||||||
| A1 | MOV | rAX | moffs16/32/64 | Move | |||||||||||||||||
| A2 | MOV | moffs8 | AL | Move | |||||||||||||||||
| A3 | MOV | moffs16/32/64 | rAX | Move | |||||||||||||||||
| A4 | MOVS | m8 | m8 | .d...... | Move Data from String to String | ||||||||||||||||
| MOVSB | m8 | m8 | |||||||||||||||||||
| A5 | MOVS | m16 | m16 | .d...... | Move Data from String to String | ||||||||||||||||
| MOVSW | m16 | m16 | |||||||||||||||||||
| A5 | 03+ | MOVS | m16/32 | m16/32 | .d...... | Move Data from String to String | |||||||||||||||
| MOVSD | m32 | m32 | |||||||||||||||||||
| A5 | P4+ | E | MOVS | m16/32/64 | m16/32/64 | .d...... | Move Data from String to String | ||||||||||||||
| MOVSW | m16 | m16 | |||||||||||||||||||
| MOVSD | m32 | m32 | |||||||||||||||||||
| MOVSQ | m64 | m64 | |||||||||||||||||||
| A6 | CMPS | m8 | m8 | .d...... | o..szapc | o..szapc | Compare String Operands | ||||||||||||||
| CMPSB | m8 | m8 | |||||||||||||||||||
| A7 | CMPS | m16 | m16 | .d...... | o..szapc | o..szapc | Compare String Operands | ||||||||||||||
| CMPSW | m16 | m16 | |||||||||||||||||||
| A7 | 03+ | CMPS | m16/32 | m16/32 | .d...... | o..szapc | o..szapc | Compare String Operands | |||||||||||||
| CMPSD | m32 | m32 | |||||||||||||||||||
| A7 | P4+ | E | CMPS | m16/32/64 | m16/32/64 | .d...... | o..szapc | o..szapc | Compare String Operands | ||||||||||||
| CMPSW | m16 | m16 | |||||||||||||||||||
| CMPSD | m32 | m32 | |||||||||||||||||||
| CMPSQ | m64 | m64 | |||||||||||||||||||
| A8 | TEST | AL | imm8 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Compare | |||||||||||||
| A9 | TEST | rAX | imm16/32 | o..szapc | o..sz.pc | .....a.. | o......c | Logical Compare | |||||||||||||
| AA | STOS | m8 | AL | .d...... | Store String | ||||||||||||||||
| STOSB | m8 | AL | |||||||||||||||||||
| AB | STOS | m16 | AX | .d...... | Store String | ||||||||||||||||
| STOSW | m16 | AX | |||||||||||||||||||
| AB | 03+ | STOS | m16/32 | eAX | .d...... | Store String | |||||||||||||||
| STOSD | m32 | EAX | |||||||||||||||||||
| AB | P4+ | E | STOS | m16/32/64 | rAX | .d...... | Store String | ||||||||||||||
| STOSW | m16 | AX | |||||||||||||||||||
| STOSD | m32 | EAX | |||||||||||||||||||
| STOSQ | m64 | RAX | |||||||||||||||||||
| AC | LODS | AL | m8 | .d...... | Load String | ||||||||||||||||
| LODSB | AL | m8 | |||||||||||||||||||
| AD | LODS | AX | m16 | .d...... | Load String | ||||||||||||||||
| LODSW | AX | m16 | |||||||||||||||||||
| AD | 03+ | LODS | eAX | m16/32 | .d...... | Load String | |||||||||||||||
| LODSD | EAX | m32 | |||||||||||||||||||
| AD | P4+ | E | LODS | rAX | m16/32/64 | .d...... | Load String | ||||||||||||||
| LODSW | AX | m16 | |||||||||||||||||||
| LODSD | EAX | m32 | |||||||||||||||||||
| LODSQ | RAX | m64 | |||||||||||||||||||
| AE | SCAS | m8 | AL | .d...... | o..szapc | o..szapc | Scan String | ||||||||||||||
| SCASB | m8 | AL | |||||||||||||||||||
| AF | SCAS | m16 | AX | .d...... | o..szapc | o..szapc | Scan String | ||||||||||||||
| SCASW | m16 | AX | |||||||||||||||||||
| AF | 03+ | SCAS | m16/32 | eAX | .d...... | o..szapc | o..szapc | Scan String | |||||||||||||
| SCASD | m32 | EAX | |||||||||||||||||||
| AF | P4+ | E | SCAS | m16/32/64 | rAX | .d...... | o..szapc | o..szapc | Scan String | ||||||||||||
| SCASW | m16 | AX | |||||||||||||||||||
| SCASD | m32 | EAX | |||||||||||||||||||
| SCASQ | m64 | RAX | |||||||||||||||||||
| B0+r | MOV | r8 | imm8 | Move | |||||||||||||||||
| B8+r | MOV | r16/32/64 | imm16/32/64 | Move | |||||||||||||||||
| C0 | 0 | 01+ | ROL | r/m8 | imm8 | o..szapc | o..szapc | o....... | Rotate | ||||||||||||
| C0 | 1 | 01+ | ROR | r/m8 | imm8 | o..szapc | o..szapc | o....... | Rotate | ||||||||||||
| C0 | 2 | 01+ | RCL | r/m8 | imm8 | .......c | o..szapc | o..szapc | o....... | Rotate | |||||||||||
| C0 | 3 | 01+ | RCR | r/m8 | imm8 | .......c | o..szapc | o..szapc | o....... | Rotate | |||||||||||
| C0 | 4 | 01+ | SHL | r/m8 | imm8 | o..szapc | o..sz.pc | o....a.c | Shift | ||||||||||||
| SAL | r/m8 | imm8 | |||||||||||||||||||
| C0 | 5 | 01+ | SHR | r/m8 | imm8 | o..szapc | o..sz.pc | o....a.c | Shift | ||||||||||||
| C0 | 6 | 01+ | U4 | SAL | r/m8 | imm8 | o..szapc | o..sz.pc | o....a.c | Shift | |||||||||||
| SHL | r/m8 | imm8 | |||||||||||||||||||
| C0 | 7 | 01+ | SAR | r/m8 | imm8 | o..szapc | o..sz.pc | o....a.. | Shift | ||||||||||||
| C1 | 0 | 01+ | ROL | r/m16/32/64 | imm8 | o..szapc | o..szapc | o....... | Rotate | ||||||||||||
| C1 | 1 | 01+ | ROR | r/m16/32/64 | imm8 | o..szapc | o..szapc | o....... | Rotate | ||||||||||||
| C1 | 2 | 01+ | RCL | r/m16/32/64 | imm8 | .......c | o..szapc | o..szapc | o....... | Rotate | |||||||||||
| C1 | 3 | 01+ | RCR | r/m16/32/64 | imm8 | .......c | o..szapc | o..szapc | o....... | Rotate | |||||||||||
| C1 | 4 | 01+ | SHL | r/m16/32/64 | imm8 | ||||||||||||||||