About
An addressing mode specifies how to calculate the real memory address of an instruction operand
The term addressing mode is itself subject to different interpretations:
- either memory address calculation mode
- or operand accessing mode.
Addressing modes are a part of the instruction set architecture
An addressing mode can specify:
- a constant,
- a register
- or a location in memory.
same as Memory - Location ?
Virtual memory, memory pages, and other hardware mapping methods may be layered on top of the addressing modes.
Articles Related
Type
The basic addressing modes are:
- register direct, moving data to or from a specific register;
- register indirect, using a register as a pointer to memory;
- program counter-based, using the program counter as a reference point in memory;
- absolute, in which the memory address is contained in the instruction;
- and immediate, in which the data is contained in the instruction.
Absolute Addressing
In absolute addressing mode, the effective address in memory is part of the instruction.
The address is a numeric label for a specific location in memory.
same as Memory Segment - Offset - (Relative|Effective) address ?
When the memory is byte addressable:
- The first byte of physical memory is at address 0,
- the second byte of physical memory is at address 1,
- the third byte of physical memory is at address 2, etc.
When the memory is word addressable:
- The first word of physical memory is at address 0,
- the second word of physical memory is at address 1,
- the third word of physical memory is at address 2, etc.
Absolute addresses are the fastest form of memory addressing.
Implicit Address
An implicit address is an address implied by the instruction without explicit declaration.
Multi-level
Multi-level addressing scheme, with:
- main memory divided into segments or pages and some or all instructions mapping into the current segment(s) or page(s).