| |
Transfer
Name |
Comment |
Syntax |
MOV |
Move (copy) |
MOV Dest,Source |
XCHG |
Exchange |
XCHG Op1,Op2 |
STC |
Set Carry |
STC |
CLC |
Clear Carry |
CLC |
CMC |
Complement Carry |
CMC |
STD |
Set Direction |
STD |
CLD |
Clear Direction |
CLD |
STI |
Set Interrupt |
STI |
CLI |
Clear Interrupt |
CLI |
PUSH |
Push onto stack |
PUSH Source |
PUSHF |
Push flags |
PUSHF |
PUSHA |
Push all general registers |
PUSHA |
POP |
Pop from stack |
POP Dest |
POPF |
Pop flags |
POPF |
POPA |
Pop all general registers |
POPA |
CBW |
Convert byte to word |
CBW |
CWD |
Convert word to double |
CWD |
CWDE |
Conv word extended double |
CWDE |
IN |
Input |
IN Dest, Port |
OUT |
Output |
OUT Port, Source |
Arithmetic
Name |
Comment |
Syntax |
ADD |
Add |
ADD Dest,Source |
ADC |
Add with Carry |
ADC Dest,Source |
SUB |
Subtract |
SUB Dest,Source |
SBB |
Subtract with borrow |
SBB Dest,Source |
DIV |
Divide (unsigned) |
DIV Op |
IDIV |
Signed Integer Divide |
IDIV Op |
MUL |
Multiply (unsigned) |
MUL Op |
IMUL |
Signed Integer Multiply |
IMUL Op |
INC |
Increment |
INC Op |
DEC |
Decrement |
DEC Op |
CMP |
Compare |
CMP Op1,Op2 |
SAL |
Shift arithmetic left |
SAL Op,Quantity |
SAR |
Shift arithmetic right |
SAR Op,Quantity |
RCL |
Rotate left through Carry |
RCL Op,Quantity |
RCR |
Rotate right through Carry |
RCR Op,Quantity |
ROL |
Rotate left |
ROL Op,Quantity |
ROR |
Rotate right |
ROR Op,Quantity |
Logic
Name |
Comment |
Syntax |
NEG |
Negate (two-complement) |
NEG Op |
NOT |
Invert each bit |
NOT Op |
AND |
Logical and |
AND Dest,Source |
OR |
Logical or |
OR Dest,Source |
XOR |
Logical exclusive or |
XOR Dest,Source |
SHL |
Shift logical left |
SHL Op,Quantity |
SHR |
Shift logical right |
SHR Op,Quantity |
Miscellaneous
Name |
Comment |
Syntax |
NOP |
No operation |
NOP |
LEA |
Load effective adress |
LEA Dest,Source |
INT |
Interrupt |
INT Nr |
Jumps (general)
Name |
Comment |
Syntax |
CALL |
Call subroutine |
CALL Proc |
JMP |
Jump |
JMP Dest |
JE |
Jump if Equal |
JE Dest |
JZ |
Jump if Zero |
JZ Dest |
JCXZ |
Jump if CX Zero |
JCXZ Dest |
JP |
Jump if Parity (Parity Even) |
JP Dest |
JPE |
Jump if Parity Even |
JPE Dest |
RET |
Return from subroutine |
RET |
JNE |
Jump if not Equal |
JNE Dest |
JNZ |
Jump if not Zero |
JNZ Dest |
JECXZ |
Jump if ECX Zero |
JECXZ Dest |
JNP |
Jump if no Parity (Parity Odd) |
JNP Dest |
JPO |
Jump if Parity Odd |
JPO Dest |
Jumps unsigned (Cardinal)
JA |
Jump if Above |
JA Dest |
JAE |
Jump if Above or Equal |
JAE Dest |
JB |
Jump if Below |
JB Dest |
JBE |
Jump if Below or Equal |
JBE Dest |
JNA |
Jump if not Above |
JNA Dest |
JNAE |
Jump if not Above or Equal |
JNAE Dest |
JNB |
Jump if not Below |
JNB Dest |
JNBE |
Jump if not Below or Equal |
JNBE Dest |
JC |
Jump if Carry |
JC Dest |
JNC |
Jump if no Carry |
JNC Dest |
Jumps signed (Integer)
JG |
Jump if Greater |
JG Dest |
JGE |
Jump if Greater or Equal |
JGE Dest |
JL |
Jump if Less |
JL Dest |
JLE |
Jump if Less or Equal |
JLE Dest |
JNG |
Jump if not Greater |
JNG Dest |
JNGE |
Jump if not Greater or Equal |
JNGE Dest |
JNL |
Jump if not Less |
JNL Dest |
JNLE |
Jump if not Less or Equal |
JNLE Dest |
JO |
Jump if Overflow |
JO Dest |
JNO |
Jump if no Overflow |
JNO Dest |
JS |
Jump if Sign (= negative) |
JS Dest |
JNS |
Jump if no Sign (= positive) |
JNS Dest |
Most of these assembly instructions are supported by all of the following intel processors:
186, 286, 386, 486, 586 = Pentium
| | |