Free Electronic Circuits & 8085 projects

Electronic projects with circuit diagram and 8085 microprocessor projects.

Based Indexed Addressing Modes & Based Indexed Plus Displacement Addressing Mode

Published on Oct 21 2009 // 8086 Details

Based Indexed Addressing Modes

The based indexed addressing modes are simply combinations of the register indirect addressing modes. These addressing modes form the offset by adding together a base register (bx or bp) and an index register (si or di). The allowable forms for these addressing modes are:

mov al, [bx+si]
mov al, [bx+di]
mov al, [bp+si]
mov al, [bp+di]

Code Example

MOV BX, 100H
MOV SI, 200H
MOV AL, [BX + SI]
INC BX
INC SI

Based Indexed Addressing Modes

Suppose that bx contains 1000h and si contains 880h. Then the instruction mov al,[bx][si] would load al from location DS:1880h. Likewise, if bp contains 1598h and di contains 1004, mov ax,[bp+di] will load the 16 bits in ax from locations SS:259C and SS:259D. The addressing modes that do not involve bp use the data segment by default. Those that have bp as an operand use the stack segment by default.

Based Indexed Plus Displacement Addressing Mode

These addressing modes are a slight modification of the base/indexed addressing modes with the addition of an eight bit or sixteen bit constant. The following are some examples of these addressing modes

mov al, disp[bx][si]
mov al, disp[bx+di]
mov al, [bp+si+disp]
mov al, [bp][di][disp]

Based Indexed Plus Displacement Addressing Mode

Code Example

MOV BX, 100H
MOV SI, 200H
MOV AL, [BX + SI +100H]
INC BX
INC SI