The document summarizes the various addressing modes supported by the 8086 processor, including register, memory, register indirect, indexed, based indexed, and based indexed plus displacement addressing modes. It provides examples of instructions using each addressing mode, such as mov ax, bx to copy the value from the BX register into the AX register using register addressing, and mov al, 20h[bx] to load the AL register from the byte at memory location DS:1020h using indexed addressing if BX contains 1000h. The document also lists some common 8086 instructions.
8. Addressing modes-8086
• Register Addressing Modes
• mov ax, bx ;Copies the value from BX into AX
mov dl, al ;Copies the value from AL into DL
mov si, dx ;Copies the value from DX into SI
mov sp, bp ;Copies the value from BP into SP
mov dh, cl ;Copies the value from CL into DH
mov ax, ax ;Yes, this is legal!
9. Memory Addressing Modes
• The Displacement Only Addressing Mode
• mov al,ds:[8088h] ; loads the al register with a
copy of the byte at memory location 8088h
• mov ax, cs:[1234h]
10. • The Register Indirect Addressing Modes
• mov al, [bx]
• mov al, [bp]
• mov al, [si]
• mov al, [di];
these addressing modes reference the byte at the
offset found in the bx, bp, si, or di register,
respectively. The [bx], [si], and [di] modes use
the ds segment by default. The [bp] addressing
mode uses the stack segment (ss) by default.
The segment override prefix symbols if you wish to
access data in different segments. The following
instructions demonstrate the use of these
overrides: mov al, cs:[bx] mov al, ds:[bp]
11. • Indexed Addressing Modes
• mov al, disp[bx]
• mov al, disp[bp]
• mov al, disp[si];
• If bx contains 1000h, then the instruction mov
cl,20h[bx] will load cl from memory location ds:1020h.
Likewise, if bp contains 2020h, mov dh,1000h[bp] will
load dh from location ss:3020
segment override prefixes to specify a different
segment: mov al, ss:disp[bx]
• mov al, es:disp[bp]
• mov al, cs:disp[si]
• mov al, ss:disp[di]
12. • Based Indexed Addressing Modes
mov al, [bx][si]
mov al, [bx][di]
mov al, [bp][si]
mov al, [bp][di];
Suppose that bx contains 1000h and si contains
880h. Then the instruction mov al,[bx][si]
would load al from location DS:1880h.
13. • Based Indexed Plus Displacement Addressing
Mode
mov al, disp[bx][si]
mov al, disp[bx+di]
mov al, [bp+si+disp]
mov al, [bp][di][disp]
15. CMPSB
MOV
AAA CMPSW JAE JNBE JPO RCR SCASB
MOVSB
AAD CWD JB JNC JS REP SCASW
MOVSW
AAM DAA JBE JNE JZ REPE SHL
MUL
AAS DAS JC JNG LAHF REPNE SHR
NEG
ADC DEC JCXZ JNGE LDS REPNZ STC
NOP
ADD DIV JE JNL LEA REPZ STD
OR
AND HLT JG JNLE LES RET STI
OUT
CALL IDIV JGE JNO LODSB RETF STOSB
POP
CBW IMUL JL JNP LODSW ROL STOSW
POPA
CLC IN JLE JNS LOOP ROR SUB
POPF
CLD INC JMP JNZ LOOPE SAHF TEST
PUSH
CLI INT JNA JO LOOPNE SAL XCHG
PUSHA
CMC INTO JNAE JP LOOPNZ SAR XLATB
PUSHF
CMP IRET JNB JPE LOOPZ SBB XOR
RCL
JA
12/06/12 15