The_complete_8086_instructions

The_complete_8086_instructions - Complete8086instructionset...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
Complete 8086 instruction set   Quick reference: AAA   AAD   AAM   AAS   ADC   ADD   AND   CALL   CBW   CLC   CLD   CLI   CMC   CMP   CMPSB   CMPSW   CWD   DAA   DAS   DEC   DIV   HLT   IDIV   IMUL   IN   INC   INT   INTO   IRET   JA   JAE   JB   JBE   JC   JCXZ   JE   JG   JGE   JL   JLE   JMP   JNA   JNAE   JNB   JNBE   JNC   JNE   JNG   JNGE   JNL   JNLE   JNO   JNP   JNS   JNZ   JO   JP   JPE   JPO   JS   JZ   LAHF   LDS   LEA   LES   LODSB   LODSW   LOOP   LOOPE   LOOPNE   LOOPNZ   LOOPZ   MOV   MOVSB   MOVSW   MUL   NEG   NOP   NOT   OR   OUT   POP   POPA   POPF   PUSH   PUSHA   PUSHF   RCL   RCR   REP   REPE   REPNE   REPNZ   REPZ   RET   RETF   ROL   ROR   SAHF   SAL   SAR   SBB   SCASB   SCASW   SHL   SHR   STC   STD   STI   STOSB   STOSW   SUB   TEST   XCHG   XLATB   XOR   Operand types: REG : AX, BX, CX, DX, AH, AL, BL, BH, CH, CL, DH, DL, DI, SI, BP, SP. SREG : DS, ES, SS, and only as second operand: CS. memory : [BX], [BX+SI+7], variable, etc. ..(see  Memory Access ). immediate : 5, -24, 3Fh, 10001101b, etc. .. Notes: When two operands are required for an instruction they are separated by  comma. For example:
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
REG, memory When there are two operands, both operands must have the same size  (except shift and rotate instructions). For example: AL, DL DX, AX m1 DB ? AL, m1 m2 DW ? AX, m2 Some instructions allow several operand combinations. For example: memory, immediate REG, immediate memory, REG REG, SREG Some examples contain macros, so it is advisable to use  Shift + F8  hot  key to  Step Over  (to make macro code execute at maximum speed set  step delay  to zero), otherwise emulator will step through each instruction  of a macro. Here is an example that uses PRINTN macro:  include 'emu8086.inc' ORG 100h MOV AL, 1 MOV BL, 2 PRINTN 'Hello World!' ; macro. MOV CL, 3 PRINTN 'Welcome!' ; macro. RET These marks are used to show the state of the flags: 1  - instruction sets this flag to  1 . 0  - instruction sets this flag to  0 .
Background image of page 2
r  - flag value depends on result of the instruction. ?  - flag value is undefined (maybe  1  or  0 ). Some instructions generate exactly the same machine code, so  disassembler may have a problem decoding to your original code. This is  especially important for Conditional Jump instructions (see " Program Flow  Control " in Tutorials for more information).   Instructions in alphabetical order:  Instruction Operands Description    AAA No operands ASCII Adjust after Addition. Corrects result in AH and AL after addition when working with 
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 11/10/2011 for the course COMPUTER E 444 taught by Professor Amigo during the Fall '10 term at Al-Quds University.

Page1 / 60

The_complete_8086_instructions - Complete8086instructionset...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online