Opcodes list

Part of this content was taken from Ralf Browns Interrupt list Rev. 61 and HelpPC 2.1 by David Jurgens.

Note: the list is incomplete.
Last update: 2010-09-26

AAA - ASCII adjust AX after addition
AAD - ASCII adjust AX before Division
AAM - ASCII adjust AX after Multiply
ADC - Add with carry
ADD - Add bytes, words or dwords
ADDSS - Scalar Single
AND - Logical AND
BOUND - Array Bound Check
BSWAP - Bytes Swap
BT - Bit Test
CALL - Call a Procedure
CLI - Clear Interrupt Flag
CLTS - Clear Task Switched Flag
CMC - Complement Carry Flag
CMOVcc - Conditional Move
CMP - Compare
CMPPS - Packed Single FP
CMPSs - Compare String
CMPSS - Scalar Single FP
CMPXCHG - Compare And Exchange
CMPXCHG8B - Compare and exchange 8 bytes
CMPXCHG - Compare and exchange
COMISS - Scalar Ordered Single
CPUID - CPU Identification
CVTPI2PS - Packed Signed INT32 to Packed Single
CVTPS2PI - Packed Single
CVTSI2SS - Scalar Signed INT32 to Single
CVTSS2SI - Scalae Single
CVTTPS2PI - Packed Single
CVTTSS2SI - Scalar Single
DEC - Decrement
DIV - Divide
DIVPS - Packed Single
DIVSS - Scalar Single
EMMS - Empty MMX State
ESC - Escape Extrnal Cooprocessors
FCMOVcc - Floating Point Conditional Move
FCOMI - Floating Point Compare setting Integer Flags
FEMMS - Faster Enter
FSETPM - FPU Set Protected Mode Adressing
FXRSTOR - Fast Restore F.P. Context
FXSAVE - Fast Save F.P. Context
HLT - Halt CPU
IBTS - Insert Bits String
IDIV - Signed Integer Division
IMUL - Signed Integer Multiply
IN - Input Byte, Word or Double Word From Port
INC - Increment
INS - Input String From Port
INT - Interrupt
INVD - Invalidate Cache Buffer
INVLPG - Invalidate Page Entry In TLB
IRET - Return from Interrupt
JA - Jump If Above
JAE - Jump If Above Or Equal
JB - Jump If Below
JBE - Jump If Below Or Equal
JC - Jump If Carry
JCXZ - Jump If CX Equals Zero
JCXNZ - Jump If CX Is Not Equal To Zero
JE - Jump If Equal
JG - Jump If Greater
JGE - Jump If Greater or Equal
JL - Jump If Less
JLE - Jump If Less Or Equal
JMP - Jump
JNA - Jump If Not Above
JNAE - Jump If Not Above Or Equal
JNB - Jump If Not Below
JNBE - Jump If Not Below Or Equal
JNC - Jump If Not Carry
JNE - Jump If Not Equal
JNG - Jump If Not Greater
JNGE - Jump If Not Greater Or Equal
JNL - Jump If Not Less
JNLE - Jump If Not Less Or Equal
JNO - Jump If Not Overflow
JNP - Jump If Not Parity
JNS - Jump If Not Signed
JNZ - Jump If Not Zero
JO - Jump If Overflow
JP - Jump If Not Carry
JPE - Jump If Parity Even
JPO - Jump If Parity Odd
JS - Jump If Signed
JZ - Jump If Zero
LDMXCSR - Load Streaming SIMD Extension Control
LOADALL - Load All Registers
LOADALL - Load All Registers From Table
LODS - Load Offset to AX
LSL - Load Segment Limit
LSS - Load Pointer Using SS
LTR - Load Task Register
MASKMOVQ - Byte Mask Write
MAXPS - Packed Single
MAXSS - Scalar Single
MINPS - Packed Single
MINSS - Scalar Single
MOV - Move byte, word or dword
MOVAPS - Move Aligned Four Packed Single
MOVD - Move Dwords
MOVHLPS - Move High to Low Packed Single
MOVHPS - Move High Packed Single FP.
MOVLHPS - Move Low to High Packed Single
MOVLPS - Move Low Packed Single FP.
MOVMSKPS - Move Mask to Integer
MOVNTPS - Move Aligned Four Packed Single
MOVNTQ - Move 64 bits non temporal
MOVQ - Move Qwords
MOVSS - Move Scalar Single
MOVUPS - Move Unaligned Four Packed Single
MUL - Multiply
MULPS - Packed Single
MULSS - Scalar Single
NEG - Negation
NOP - No Operation
NOT - Negation
OIO - Official Undefined Opcode
OR - Inclusive Logical OR
ORPS - Bit
OUT - Putput Data to Port
OUTS - Output String to Port
PACKSSDW - Pack with Signed Saturation dword to word
PACKSSWB - Pack with Signed Saturation word to Byte
PACKUSWB - Pack with Unsigned Saturation word to Byte
PADDB - Packed Add Bytes
PADDD - Packed Add Dwords
PADDSB - Packed Add with Saturation Bytes
PADDSIW - Packed Add with Saturation, using Implied Destination
PADDSW - Packed Add with Saturation Words
PADDUSB - Packed Add Unsigned with Saturation Bytes
PADDUSW - Packed Add Unsigned with Saturation Words
PADDW - Packed Add Words
PAND - Bitwise Logical And
PANDN - Bitwise Logical And Not
PAVEB - Packed Average
PAVGUSB - Avarage of Unsigned packed 8
PCMPEQB - Packed Compare for Equal Bytes
PCMPEQD - Packed Compare for Equal Dwords
PCMPEQW - Packed Compare for Equal Words
PCMPGTB - Packed Compare for Greater Than Bytes
PCMPGTD - Packed Compare for Greater Than Dwords
PCMPGTW - Packed Compare for Greater Than Words
PDISTIB - Packed Distance and Accumulate with Implied Register
PEXTRW - Extract Word
PF2ID - Convert Packed F.P. to 32
PF2IW - Packed FP to Integer Word conversion with sign extend
PFACC - F.P. Accumulate
PFADD - Packed F.P. Addition
PFCMPEQ - Packed F.P. comparson, equal to
PFCMPGE - Packed F.P. comparison, greater or equal to
PFCMPGT - Packed F.P. compariason, greater to
PFMAX - Packed F.P. Maximum
PFMIN - Packed F.P. Minimum
PFMUL - Packed F.P. Multiplication
PFNACC - Packed Floating Point negative accumulate
PFPNACC - Packed Floating Point Mixed Positive
PFRCP - F.P. Reciprocal Approximation
PFRCPIT1 - Packed F.P. Reciprocal, first iteration Step
PFRCPIT2 - Packed F.P. Reciprocal, second iteration Step
PFRSQIT1 - Packed F.P. Reciprocal Square Root, 1st iteration step
PFRSQRT - F.P. Reciprocal Square Root Approximation
PFSUB - Packed F.P. Subtraction
PFSUBR - Packed F.P. Reverse Subtraction
PI2FD - Packed 32
PI2FW - Packed 16
PINSRW - Insert Word
PMACHRIW - Packed Multiply and Accumulate with Rounding
PMADDWD - Packed Multiply and Add Dwords
PMAGW - Packed Magnitude
PMAXSW - Packed Signed Integer Word Maximum
PMAXUB - Packed Unsigned Integer Byte Maximum
PMINSW - Packed Signed Integer Word Minimum
PMINUB - Packed Unsigned Integer Byte Minimum
PMOVMSKB - Move Byte Mask to Integer
PMULHRIW - Packed Multiply High with Rounding, result to Implied Register
PMULHRW - Packed Multiply High with Rounding
PMULHRW - Multiply Signed Packed 16
PMULHUW - Packed Multiply high unsignde word
PMULHW - Packed Multiply High by Words
PMULLW - Packed Multiply Low by Words
PMVGEZB - Packed Conditional Move
PMVLZB - Packed Conditional Move
PMVNZB - Packed Conditional Move
PMVZB - Packed Conditional Move
POP - POP Word off Stack
POR - Bitwise Logical Or
PREFETCHxx - Prefetch
PREFETCH - Prefetch CPU cache line into L1 data cache
PREFETCHW - Prefetch CPU cache line into L1 data cache
PSLLD - Packed Shift Left Logical Dwords
PSLLQ - Packed Shift Left Logical Qwords
PSLLW - Packed Shift Left Logical Words
PSRAD - Packed Shift Right Arithmetic Dwords
PSRAW - Packed Shift Right Arithmetic Words
PSRLD - Packed Shift Right Logical Dwords
PSRLQ - Packed Shift Right Logical Qwords
PSRLW - Packed Shift Right Logical Words
PSUBB - Packed Subtract Bytes
PSUBD - Packed Subtract Dwords
PSUBSB - Packed Subtract with Saturation Bytes
PSUBSIW - Packed Subtract with Saturation, using Implied Destination
PSUBSW - Packed Subtract with Saturation Words
PSUBUSB - Packed Subtract Unsigned with Saturation Bytes
PSUBUSW - Packed Subtract Unsigned with Saturation Bytes
PSUBW - Packed Subtract Words
PSWAPD - Packed Swap Doubleword
PUNPCKHBW - Unpack High Bytes to Words
PUNPCKHDQ - Unpack High Dwords to Qwords
PUNPCKHWD - Unpack High Words to Dwords
PUNPCKLBW - Unpack Low Bytes to Words
PUNPCKLDQ - Unpack Low Dwords to Qwords
PUNPCKLWD - Unpack Low Words to Dwords
PXOR - Bitwise Logical Exclusive OR
RCPPS - Packed Single
RCPSS - Scalar Single
RDMSR - Read From Model Specified Register
RDPMC - Read Perfomance Monitoring Counters
RDSHR - Read SMM Header Pointer Register
RDTSC - Read From Time Stamp Counter
RES3 - Restore All CPU Registers
RES4 - Restore All CPU Registers
RSDC - Restore Register and Descriptor
RSLDT - Restore LDTR and Descriptor
RSM - Resume from System Managment Mode
RSQRTPS - Packed Single
RSQRTSS - Scalar Single
RSTS - Restore TR and Descriptor
SETALC - Set AL to Carry Flag
SFENCE - Store Fence
SHUFPS - Shuffle Single
SMI - System Managment Interrupt
SMINT - Software SMM Interrupt
SQRTPS - Packed Single
SQRTSS - Scalar Single
STMXCSR - Store Streaming SIMD Extension Control
STOS - Store to Offset
SUB - Substract
SUBPS - Packed Single
SUBSS - Scalar Single
SVDC - Save Register and Descriptor
SVLDT - Save LDTR and Descriptor
SVTS - Save TR and Descriptor
SYSCALL - Call Operating System
SYSENTER - Call Operating System
SYSEXIT - Return from Operation System
SYSRET - Return from Operation System
UCOMISS - Unordered Scalar Single
UNPCKLPS - Unpack Low Packed Single
UD - Undefined Instruction
UD2 - Undefined Instruction
UMOV - Mov Data to Main
WBINVD - Write Back and Invalidate Cache
WRMSR - Write to Model Specified Register
WRSHR - Write SMM Header Pointer Register
XADD - Exchange and addition
XBTS - Extract Bits String

Copyright by InternetNightmare 2005-2006