| Opcode | Description | 
        
            | AAA | ASCII Adjust After Addition | 
        
            | AAD | ASCII Adjust AX Before Division | 
        
            | AAS | ASCII Adjust AL After Subtraction | 
        
            | ADC | Add with Carry | 
        
            | ADD | Add | 
        
            | ADDPD | Add Packed Double-Precision Floating-Point Values | 
        
            | ADDPS | Add Packed Single-Precision Floating-Point Values | 
        
            | ADDSD | Add Scalar Double-Precision Floating-Point Values | 
        
            | ADDSS | Add Scalar Single-Precision Floating-Point Values | 
        
            | ADDSUBPD | Packed Double-FP Add/Subtract | 
        
            | ADDSUBPS | Packed Single-FP Add/Subtract | 
        
            | AND | Logical AND | 
        
            | ANDPD | Bitwise Logical AND of Packed Double-Precision Floating-Point Values | 
        
            | ANDPS | Bitwise Logical AND of Packed Single-Precision Floating-Point Values | 
        
            | ANDNPD | Bitwise Logical AND NOT of Packed Double-Precision Floating-Point Values | 
        
            | ANDNPS | Bitwise Logical AND NOT of Packed Single-Precision Floating-Point Values | 
        
            | ARPL | Adjust RPL Field of Segment Selector | 
        
            | BOUND | Check Array Index Against Bounds | 
        
            | BSF | Bit Scan Forward | 
        
            | BSR | Bit Scan Reverse | 
        
            | BSWAP | Byte Swap | 
        
            | BT | Bit Test | 
        
            | BTC | Bit Test and Complement | 
        
            | BTR | Bit Test and Reset | 
        
            | BTS | Bit Test and Set | 
        
            | CALL | Call Procedure | 
        
            | CBW/CWDE | Convert Byte to Word/Convert Word to Doubleword | 
        
            | CLC | Clear Carry Flag | 
        
            | CLD | Clear Direction Flag | 
        
            | CLFLUSH | Flush Cache Line | 
        
            | CLI | Clear Interrupt Flag | 
        
            | CLTS | Clear Task-Switched Flag in CR0 | 
        
            | CMC | Complement Carry Flag | 
        
            | CMOVcc | Conditional Move | 
        
            | CMP | Compare Two Operands | 
        
            | CMPPD | Compare Packed Double-Precision Floating-Point Values | 
        
            | CMPPS | Compare Packed Single-Precision Floating-Point Values | 
        
            | CMPS/CMPSB/CMPSW/CMPSD | Compare String Operands | 
        
            | CMPSD | Compare Scalar Double-Precision Floating-Point Values | 
        
            | CMPSS | Compare Scalar Single-Precision Floating-Point Values | 
        
            | CMPXCHG | Compare and Exchange | 
        
            | CMPXCHG8B | Compare and Exchange 8 Bytes | 
        
            | COMISD | Compare Scalar Ordered Double-Precision Floating- Point Values and Set EFLAGS | 
        
            | COMISS | Compare Scalar Ordered Single-Precision Floating- Point Values and Set EFLAGS | 
        
            | CPUID | CPU Identification | 
        
            | CVTDQ2PD | Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point Values | 
        
            | CVTDQ2PS | Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point Values | 
        
            | CVTPD2DQ | Convert Packed Double-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTPD2PI | Convert Packed Double-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTPD2PS | Convert Packed Double-Precision Floating-Point Values to Packed Single-Precision Floating-Point Values | 
        
            | CVTPI2PD | Convert Packed Doubleword Integers to Packed Double-Precision Floating-Point Values | 
        
            | CVTPI2PS | Convert Packed Doubleword Integers to Packed Single-Precision Floating-Point Values | 
        
            | CVTPS2DQ | Convert Packed Single-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTPS2PD | Convert Packed Single-Precision Floating-Point Values to Packed Double-Precision Floating-Point Values | 
        
            | CVTPS2PI | Convert Packed Single-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTSD2SI | Convert Scalar Double-Precision Floating-Point Value to Doubleword Integer | 
        
            | CVTSD2SS | Convert Scalar Double-Precision Floating-Point Value to Scalar Single-Precision Floating-Point Value | 
        
            | CVTSI2SD | Convert Doubleword Integer to Scalar Double- Precision Floating-Point Value | 
        
            | CVTSI2SS | Convert Doubleword Integer to Scalar Single- Precision Floating-Point Value | 
        
            | CVTSS2SD | Convert Scalar Single-Precision Floating-Point Value to Scalar Double-Precision Floating-Point Value | 
        
            | CVTSS2SI | Convert Scalar Single-Precision Floating-Point Value to Doubleword Integer | 
        
            | CVTTPD2PI | Convert with Truncation Packed Double-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTTPD2DQ | Convert with Truncation Packed Double-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTTPS2DQ | Convert with Truncation Packed Single-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTTPS2PI | Convert with Truncation Packed Single-Precision Floating-Point Values to Packed Doubleword Integers | 
        
            | CVTTSD2SI | Convert with Truncation Scalar Double-Precision Floating-Point Value to Signed Doubleword Integer | 
        
            | CVTTSS2SI | Convert with Truncation Scalar Single-Precision Floating-Point Value to Doubleword Integer | 
        
            | CWD/CDQ | Convert Word to Doubleword/Convert Doubleword to Quadword | 
        
            | DAA | Decimal Adjust AL after Addition | 
        
            | DAS | Decimal Adjust AL after Subtraction | 
        
            | DEC | Decrement by 1 | 
        
            | DIV | Unsigned Divide | 
        
            | DIVPD | Divide Packed Double-Precision Floating-Point Values | 
        
            | DIVPS | Divide Packed Single-Precision Floating-Point Values | 
        
            | DIVSD | Divide Scalar Double-Precision Floating-Point Values | 
        
            | DIVSS | Divide Scalar Single-Precision Floating-Point Values | 
        
            | EMMS | Empty MMX Technology State | 
        
            | ENTER | Make Stack Frame for Procedure Parameters | 
        
            | F2XM1 | Compute 2x-1 | 
        
            | FABS | Absolute Value | 
        
            | FADD/FADDP/FIADD | Add | 
        
            | FBLD | Load Binary Coded Decimal | 
        
            | FBSTP | Store BCD Integer and Pop | 
        
            | FCHS | Change Sign | 
        
            | FCLEX/FNCLEX | Clear Exceptions | 
        
            | FCMOVcc | Floating-Point Conditional Move | 
        
            | FCOM/FCOMP/FCOMPP | Compare Floating Point Values | 
        
            | FCOMI/FCOMIP/FUCOMI/FUCOMIP | Compare Floating Point Values and Set EFLAGS | 
        
            | FCOS | Cosine | 
        
            | FDECSTP | Decrement Stack-Top Pointer | 
        
            | FDIV/FDIVP/FIDIV | Divide | 
        
            | FDIVR/FDIVRP/FIDIVR | Reverse Divide | 
        
            | FFREE | Free Floating-Point Register | 
        
            | FICOM/FICOMP | Compare Integer | 
        
            | FILD | Load Integer | 
        
            | FINCSTP | Increment Stack-Top Pointer | 
        
            | FINIT/FNINIT | Initialize Floating-Point Unit | 
        
            | FIST/FISTP | Store Integer | 
        
            | FISTTP | Store Integer with Truncation | 
        
            | FLD | Load Floating Point Value | 
        
            | FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ | Load Constant | 
        
            | FLDCW | Load x87 FPU Control Word | 
        
            | FLDENV | Load x87 FPU Environment | 
        
            | FMUL/FMULP/FIMUL | Multiply | 
        
            | FNOP | No operation | 
        
            | FPATAN | Partial Arctangent | 
        
            | FPREM | Partial Remainder | 
        
            | FPREM1 | Partial Remainder | 
        
            | FPTAN | Partial Tangent | 
        
            | FRNDINT | Round to Integer | 
        
            | FRSTOR | Restore x87 FPU State | 
        
            | FSAVE/FNSAVE | Store x87 FPU State | 
        
            | FSCALE | Scale | 
        
            | FSIN | Sine | 
        
            | FSINCOS | Sine and Cosine | 
        
            | FSQRT | Square Root | 
        
            | FST/FSTP | Store Floating Point Value | 
        
            | FSTCW/FNSTCW | Store x87 FPU Control Word | 
        
            | FSTENV/FNSTENV | Store x87 FPU Environment | 
        
            | FSTSW/FNSTSW | Store x87 FPU Status Word | 
        
            | FSUB/FSUBP/FISUB | Subtract | 
        
            | FSUBR/FSUBRP/FISUBR | Reverse Subtract | 
        
            | FTST | Test Floating Point Value | 
        
            | FUCOM/FUCOMP/FUCOMPP | Unordered Compare Floating Point Values | 
        
            | FXAM | Examine Floating Point Value | 
        
            | FXCH | Exchange Register Contents | 
        
            | FXRSTOR | Restore x87 FPU, MMX Technology, SSE, and SSE2 State | 
        
            | FXSAVE | Save x87 FPU, MMX Technology, SSE, and SSE2 State | 
        
            | FXTRACT | Extract Exponent and Mantissa | 
        
            | FYL2X | Compute y * log_2(x) | 
        
            | FYL2XP1 | Compute y * log_2(x + 1) | 
        
            | HADDPD | Packed Double-FP Horizontal Add | 
        
            | HADDPS | Packed Single-FP Horizontal Add | 
        
            | HLT | Halt | 
        
            | HSUBPD | Packed Double-FP Horizontal Subtract | 
        
            | HSUBPS | Packed Single-FP Horizontal Subtract | 
        
            | IDIV | Signed Divide | 
        
            | IMUL | Signed Multiply | 
        
            | IN | Input from Port | 
        
            | INC | Increment by 1 | 
        
            | INS/INSB/INSW/INSD | Input from Port to String | 
        
            | INT n/INTO/INT 3 | Call to Interrupt Procedure | 
        
            | INVD | Invalidate Internal Caches | 
        
            | INVLPG | Invalidate TLB Entry | 
        
            | IRET/IRETD | Interrupt Return | 
        
            | Jcc | Jump if Condition Is Met | 
        
            | JMP | Jump | 
        
            | LAHF | Load Status Flags into AH Register | 
        
            | LAR | Load Access Rights Byte | 
        
            | LDDQU | Load Unaligned Integer 128 Bits | 
        
            | LDMXCSR | Load MXCSR Register | 
        
            | LDS/LES/LFS/LGS/LSS | Load Far Pointer | 
        
            | LEA | Load Effective Address | 
        
            | LEAVE | High Level Procedure Exit | 
        
            | LFENCE | Load Fence | 
        
            | LGDT/LIDT | Load Global/Interrupt Descriptor Table Register | 
        
            | LLDT | Load Local Descriptor Table Register | 
        
            | LMSW | Load Machine Status Word | 
        
            | LOCK | Assert LOCK# Signal Prefix | 
        
            | LODS/LODSB/LODSW/LODSD | Load String | 
        
            | LOOP/LOOPcc | Loop According to ECX Counter | 
        
            | LSL | Load Segment Limit | 
        
            | LTR | Load Task Register | 
        
            | MASKMOVDQU | Store Selected Bytes of Double Quadword | 
        
            | MASKMOVQ | Store Selected Bytes of Quadword | 
        
            | MAXPD | Return Maximum Packed Double-Precision Floating- Point Values | 
        
            | MAXPS | Return Maximum Packed Single-Precision Floating-Point Values | 
        
            | MAXSD | Return Maximum Scalar Double-Precision Floating-Point Value | 
        
            | MAXSS | Return Maximum Scalar Single-Precision Floating-Point Value | 
        
            | MFENCE | Memory Fence | 
        
            | MINPD | Return Minimum Packed Double-Precision Floating-Point Values | 
        
            | MINPS | Return Minimum Packed Single-Precision Floating-Point Values | 
        
            | MINSD | Return Minimum Scalar Double-Precision Floating-Point Value | 
        
            | MINSS | Return Minimum Scalar Single-Precision Floating-Point Value | 
        
            | MONITOR | Setup Monitor Address | 
        
            | MOV | Move | 
        
            | MOV | Move to/from Control Registers | 
        
            | MOV | Move to/from Debug Registers | 
        
            | MOVAPD | Move Aligned Packed Double-Precision Floating-Point Values | 
        
            | MOVAPS | Move Aligned Packed Single-Precision Floating-Point Values | 
        
            | MOVD | Move Doubleword | 
        
            | MOVDDUP | Move One Double-FP and Duplicate | 
        
            | MOVDQA | Move Aligned Double Quadword | 
        
            | MOVDQU | Move Unaligned Double Quadword | 
        
            | MOVDQ2Q | Move Quadword from XMM to MMX Technology Register | 
        
            | MOVHLPS | Move Packed Single-Precision Floating-Point Values High to Low | 
        
            | MOVHPD | Move High Packed Double-Precision Floating-Point Value | 
        
            | MOVHPS | Move High Packed Single-Precision Floating-Point Values | 
        
            | MOVLHPS | Move Packed Single-Precision Floating-Point Values Low to High | 
        
            | MOVLPD | Move Low Packed Double-Precision Floating-Point Value | 
        
            | MOVLPS | Move Low Packed Single-Precision Floating-Point Values | 
        
            | MOVMSKPD | Extract Packed Double-Precision Floating-Point Sign Mask | 
        
            | MOVMSKPS | Extract Packed Single-Precision Floating-Point Sign Mask | 
        
            | MOVNTDQ | Store Double Quadword Using Non-Temporal Hint | 
        
            | MOVNTI | Store Doubleword Using Non-Temporal Hint | 
        
            | MOVNTPD | Store Packed Double-Precision Floating-Point Values Using Non-Temporal Hint | 
        
            | MOVNTPS | Store Packed Single-Precision Floating-Point Values Using Non-Temporal Hint | 
        
            | MOVNTQ | Store of Quadword Using Non-Temporal Hint | 
        
            | MOVSHDUP | Move Packed Single-FP High and Duplicate | 
        
            | MOVSLDUP | Move Packed Single-FP Low and Duplicate | 
        
            | MOVQ | Move Quadword | 
        
            | MOVQ2DQ | Move Quadword from MMX Technology to XMM Register | 
        
            | MOVS/MOVSB/MOVSW/MOVSD | Move Data from String to String | 
        
            | MOVSD | Move Scalar Double-Precision Floating-Point Value | 
        
            | MOVSS | Move Scalar Single-Precision Floating-Point Values | 
        
            | MOVSX | Move with Sign-Extension | 
        
            | MOVUPD | Move Unaligned Packed Double-Precision Floating- Point Values | 
        
            | MOVUPS | Move Unaligned Packed Single-Precision Floating- Point Values | 
        
            | MOVZX | Move with Zero-Extend | 
        
            | MUL | Unsigned Multiply | 
        
            | MULPD | Multiply Packed Double-Precision Floating-Point Values | 
        
            | MULPS | Multiply Packed Single-Precision Floating-Point Values | 
        
            | MULSD | Multiply Scalar Double-Precision Floating-Point Values | 
        
            | MULSS | Multiply Scalar Single-Precision Floating-Point Values | 
        
            | MWAIT | Monitor Wait | 
        
            | NEG | Two's Complement Negation | 
        
            | NOP | No Operation | 
        
            | NOT | One's Complement Negation | 
        
            | OR | Logical Inclusive OR | 
        
            | ORPD | Bitwise Logical OR of Double-Precision Floating-Point Values | 
        
            | ORPS | Bitwise Logical OR of Single-Precision Floating-Point Values | 
        
            | OUT | Output to Port | 
        
            | OUTS/OUTSB/OUTSW/OUTSD | Output String to Port | 
        
            | PACKSSWB/PACKSSDW | Pack with Signed Saturation | 
        
            | PACKUSWB | Pack with Unsigned Saturation | 
        
            | PADDB/PADDW/PADDD | Add Packed Integers | 
        
            | PADDQ | Add Packed Quadword Integers | 
        
            | PADDSB/PADDSW | Add Packed Signed Integers with Signed Saturation | 
        
            | PADDUSB/PADDUSW | Add Packed Unsigned Integers with Unsigned Saturation | 
        
            | PAND | Logical AND | 
        
            | PANDN | Logical AND NOT | 
        
            | PAUSE | Spin Loop Hint | 
        
            | PAVGB/PAVGW | Average Packed Integers | 
        
            | PCMPEQB/PCMPEQW/PCMPEQD | Compare Packed Data for Equal | 
        
            | PCMPGTB/PCMPGTW/PCMPGTD | Compare Packed Signed Integers for Greater Than | 
        
            | PEXTRW | Extract Word | 
        
            | PINSRW | Insert Word | 
        
            | PMADDWD | Multiply and Add Packed Integers | 
        
            | PMAXSW | Maximum of Packed Signed Word Integers | 
        
            | PMAXUB | Maximum of Packed Unsigned Byte Integers | 
        
            | PMINSW | Minimum of Packed Signed Word Integers | 
        
            | PMINUB | Minimum of Packed Unsigned Byte Integers | 
        
            | PMOVMSKB | Move Byte Mask | 
        
            | PMULHUW | Multiply Packed Unsigned Integers and Store High Result | 
        
            | PMULHW | Multiply Packed Signed Integers and Store High Result | 
        
            | PMULLW | Multiply Packed Signed Integers and Store Low Result | 
        
            | PMULUDQ | Multiply Packed Unsigned Doubleword Integers | 
        
            | POP | Pop a Value from the Stack | 
        
            | POPA/POPAD | Pop All General-Purpose Registers | 
        
            | POPF/POPFD | Pop Stack into EFLAGS Register | 
        
            | POR | Bitwise Logical OR | 
        
            | PREFETCHh | Prefetch Data Into Caches | 
        
            | PSADBW | Compute Sum of Absolute Differences | 
        
            | PSHUFD | Shuffle Packed Doublewords | 
        
            | PSHUFHW | Shuffle Packed High Words | 
        
            | PSHUFLW | Shuffle Packed Low Words | 
        
            | PSHUFW | Shuffle Packed Words | 
        
            | PSLLDQ | Shift Double Quadword Left Logical | 
        
            | PSLLW/PSLLD/PSLLQ | Shift Packed Data Left Logical | 
        
            | PSRAW/PSRAD | Shift Packed Data Right Arithmetic | 
        
            | PSRLDQ | Shift Double Quadword Right Logical | 
        
            | PSRLW/PSRLD/PSRLQ | Shift Packed Data Right Logical | 
        
            | PSUBB/PSUBW/PSUBD | Subtract Packed Integers | 
        
            | PSUBQ | Subtract Packed Quadword Integers | 
        
            | PSUBSB/PSUBSW | Subtract Packed Signed Integers with Signed Saturation | 
        
            | PSUBUSB/PSUBUSW | Subtract Packed Unsigned Integers with Unsigned Saturation | 
        
            | PUNPCKHBW/PUNPCKHWD/PUNPCKHDQ/PUNPCKHQDQ | Unpack High Data | 
        
            | PUNPCKLBW/PUNPCKLWD/PUNPCKLDQ/PUNPCKLQDQ | Unpack Low Data | 
        
            | PUSH | Push Word or Doubleword Onto the Stack | 
        
            | PUSHA/PUSHAD | Push All General-Purpose Registers | 
        
            | PUSHF/PUSHFD | Push EFLAGS Register onto the Stack | 
        
            | PXOR | Logical Exclusive OR | 
        
            | RCL/RCR/ROL/ROR | Rotate | 
        
            | RCPPS | Compute Reciprocals of Packed Single-Precision Floating-Point Values | 
        
            | RCPSS | Compute Reciprocal of Scalar Single-Precision Floating- Point Values | 
        
            | RDMSR | Read from Model Specific Register | 
        
            | RDPMC | Read Performance-Monitoring Counters | 
        
            | RDTSC | Read Time-Stamp Counter | 
        
            | REP/REPE/REPZ/REPNE/REPNZ | Repeat String Operation Prefix | 
        
            | RET | Return from Procedure | 
        
            | RSM | Resume from System Management Mode | 
        
            | RSQRTPS | Compute Reciprocals of Square Roots of Packed Single-Precision Floating-Point Values | 
        
            | RSQRTSS | Compute Reciprocal of Square Root of Scalar Single- Precision Floating-Point Value | 
        
            | SAHF | Store AH into Flags | 
        
            | SAL/SAR/SHL/SHR | Shift | 
        
            | SBB | Integer Subtraction with Borrow | 
        
            | SCAS/SCASB/SCASW/SCASD | Scan String | 
        
            | SETcc | Set Byte on Condition | 
        
            | SFENCE | Store Fence | 
        
            | SGDT | Store Global Descriptor Table Register | 
        
            | SHLD | Double Precision Shift Left | 
        
            | SHRD | Double Precision Shift Right | 
        
            | SHUFPD | Shuffle Packed Double-Precision Floating-Point Values | 
        
            | SHUFPS | Shuffle Packed Single-Precision Floating-Point Values | 
        
            | SIDT | Store Interrupt Descriptor Table Register | 
        
            | SLDT | Store Local Descriptor Table Register | 
        
            | SMSW | Store Machine Status Word | 
        
            | SQRTPD | Compute Square Roots of Packed Double-Precision Floating-Point Values | 
        
            | SQRTPS | Compute Square Roots of Packed Single-Precision Floating-Point Values | 
        
            | SQRTSD | Compute Square Root of Scalar Double-Precision Floating-Point Value | 
        
            | SQRTSS | Compute Square Root of Scalar Single-Precision Floating-Point Value | 
        
            | STC | Set Carry Flag | 
        
            | STD | Set Direction Flag | 
        
            | STI | Set Interrupt Flag | 
        
            | STMXCSR | Store MXCSR Register State | 
        
            | STOS/STOSB/STOSW/STOSD | Store String | 
        
            | STR | Store Task Register | 
        
            | SUB | Subtract | 
        
            | SUBPD | Subtract Packed Double-Precision Floating-Point Values | 
        
            | SUBPS | Subtract Packed Single-Precision Floating-Point Values | 
        
            | SUBSD | Subtract Scalar Double-Precision Floating-Point Values | 
        
            | SUBSS | Subtract Scalar Single-Precision Floating-Point Values | 
        
            | SYSENTER | Fast System Call | 
        
            | SYSEXIT | Fast Return from Fast System Call | 
        
            | TEST | Logical Compare | 
        
            | UCOMISD | Unordered Compare Scalar Double-Precision Floating- Point Values and Set EFLAGS | 
        
            | UCOMISS | Unordered Compare Scalar Single-Precision Floating- Point Values and Set EFLAGS | 
        
            | UD2 | Undefined Instruction | 
        
            | UNPCKHPD | Unpack and Interleave High Packed Double- Precision Floating-Point Values | 
        
            | UNPCKHPS | Unpack and Interleave High Packed Single-Precision Floating-Point Values | 
        
            | UNPCKLPD | Unpack and Interleave Low Packed Double-Precision Floating-Point Values | 
        
            | UNPCKLPS | Unpack and Interleave Low Packed Single-Precision Floating-Point Values | 
        
            | VERR/VERW | Verify a Segment for Reading or Writing | 
        
            | WAIT/FWAIT | Wait | 
        
            | WBINVD | Write Back and Invalidate Cache | 
        
            | WRMSR | Write to Model Specific Register | 
        
            | XADD | Exchange and Add | 
        
            | XCHG | Exchange Register/Memory with Register | 
        
            | XLAT/XLATB | Table Look-up Translation | 
        
            | XOR | Logical Exclusive OR | 
        
            | XORPD | Bitwise Logical XOR for Double-Precision Floating-Point Values | 
        
            | XORPS | Bitwise Logical XOR for Single-Precision Floating-Point Values |