0% found this document useful (0 votes)
30 views

Addressing Mode Notes

The 8086 microprocessor supports various addressing modes to specify operands in instructions, including register, immediate, displacement, register indirect, based indexed, indexed, based, based indexed displacement, string, input/output, and relative modes. Register mode uses register operands, immediate mode uses a source operand and 8-bit or 16-bit immediate data, and displacement mode uses a direct displacement as the effective address.

Uploaded by

Pranav Nayak
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views

Addressing Mode Notes

The 8086 microprocessor supports various addressing modes to specify operands in instructions, including register, immediate, displacement, register indirect, based indexed, indexed, based, based indexed displacement, string, input/output, and relative modes. Register mode uses register operands, immediate mode uses a source operand and 8-bit or 16-bit immediate data, and displacement mode uses a direct displacement as the effective address.

Uploaded by

Pranav Nayak
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Addressing modes in 8086 microprocessor

Prerequisite – Addressing modes, Addressing modes in 8085 microprocessor


The way of specifying data to be operated by an instruction is known as addressing
modes. This specifies that the given data is an immediate data or an address. It also
specifies whether the given operand is register or register pair.
Types of addressing modes:
1. Register mode – In this type of addressing mode both the operands are
registers.
Example:
2. MOV AX, BX
3. XOR AX, DX
ADD AL, BL
4. Immediate mode – In this type of addressing mode the source operand is a 8
bit or 16 bit data. Destination operand can never be immediate data.
Example:
5. MOV AX, 2000
6. MOV CL, 0A
7. ADD AL, 45
AND AX, 0000
Note that to initialize the value of segment register an register is required.

MOV AX, 2000


MOV CS, AX
8. Displacement or direct mode – In this type of addressing mode the effective
address is directly given in the instruction as displacement.
Example:
9. MOV AX, [DISP]
MOV AX, [0500]
10. Register indirect mode – In this addressing mode the effective address is in
SI, DI or BX.
Example:
11. MOV AX, [DI]
12. ADD AL, [BX]
MOV AX, [SI]
13. Based indexed mode – In this the effective address is sum of base register
and index register.
14. Base register: BX, BP
Index register: SI, DI
The physical memory address is calculated according to the base register.
Example:
MOV AL, [BP+SI]
MOV AX, [BX+DI]
15. Indexed mode – In this type of addressing mode the effective address is sum
of index register and displacement.
Example:
16. MOV AX, [SI+2000]
MOV AL, [DI+3000]
17. Based mode – In this the effective address is the sum of base register and
displacement.
Example:
MOV AL, [BP+ 0100]
18. Based indexed displacement mode – In this type of addressing mode the
effective address is the sum of index register, base register and displacement.
Example:
MOV AL, [SI+BP+2000]
19. String mode – This addressing mode is related to string instructions. In this the
value of SI and DI are auto incremented and decremented depending upon the
value of directional flag.
Example:
20. MOVS B
MOVS W
21. Input/Output mode – This addressing mode is related with input output
operations.
Example:
22. IN A, 45
OUT A, 50
23. Relative mode –
In this the effective address is calculated with reference to instruction pointer.
Example:
24. JNZ 8 bit address
IP=IP+8 bit address

You might also like