The 8086 microprocessor has several addressing modes that allow it to access memory and other data sources in different ways. These addressing modes can be grouped into three categories:
Register addressing mode: In this mode, the data to be accessed is stored in one of the registers of the 8086 microprocessor. The register can be specified in the instruction itself. For example, the instruction "MOV AX, BX" moves the contents of register BX into register AX.
Memory addressing mode: In this mode, the data to be accessed is stored in memory. The memory location can be specified in the instruction itself or in a register. The different memory addressing modes include direct addressing, indirect addressing, indexed addressing, based addressing, and relative addressing.
Direct addressing: The memory location is specified directly in the instruction. For example, the instruction "MOV AX, [1234H]" moves the contents of memory location 1234H into register AX.
Indirect addressing: The memory location is specified indirectly using a register that contains the memory address. For example, the instruction "MOV AX, [BX]" moves the contents of the memory location pointed to by the contents of register BX into register AX.
Indexed addressing: The memory location is specified using a base register and an offset. For example, the instruction "MOV AX, [BX+SI]" moves the contents of the memory location pointed to by the sum of the contents of registers BX and SI into register AX.
Based addressing: The memory location is specified using a base register and a displacement. For example, the instruction "MOV AX, [BX+1234H]" moves the contents of the memory location pointed to by the sum of the contents of register BX and the displacement 1234H into register AX.
Relative addressing: The memory location is specified relative to the current instruction pointer. For example, the instruction "JMP LABEL" jumps to the instruction labeled LABEL.
Immediate addressing mode: In this mode, the data to be accessed is specified directly in the instruction. For example, the instruction "MOV AX, 1234H" moves the value 1234H into register AX.
Markdown for AI
A clean, structured version of this page for AI assistants and LLMs.
We use cookies to ensure you have the best browsing experience on our website. By using our site, you
acknowledge that you have read and understood our
Cookie Policy &
Privacy Policy.
The 8086 microprocessor has several addressing modes that allow it to access memory and other data sources in different ways. These addressing modes can be grouped into three categories: