In indirect addressing mode, what does the address field of an instruction…

2023

In indirect addressing mode, what does the address field of an instruction contain?

  1. A.

    The effective address of the operand directly

  2. B.

    The operand value itself

  3. C.

    The address of a memory location that stores the effective address

  4. D.

    The address stored in the program counter

  5. E.

    The register number containing the operand

Attempted by 2 students.

Show answer & explanation

Correct answer: C

Concept: An instruction's addressing mode fixes how its address field is interpreted to reach the operand. In direct addressing, the address field IS the effective address (EA) of the operand, so a single memory access reaches it. In indirect addressing, the address field instead holds the address of another memory location, and it is the content stored at that location which is the effective address of the operand — one extra memory reference (a pointer hop) is needed beyond a direct address.

Application:

  1. Let the instruction's address field contain a value A — this A is NOT the operand's location yet.

  2. The CPU reads memory location A. The value stored there, call it B, is itself an address — this B is the effective address of the operand.

  3. The CPU then accesses memory location B to fetch the actual operand — two memory references were needed (one to obtain B, one to obtain the operand), against one reference in direct addressing.

Cross-check: contrasting with the other addressing modes confirms this reading:

  • Direct addressing — the address field IS the effective address; a single memory access reaches the operand.

  • Immediate addressing — the address field holds the operand's value itself; no memory access is needed to obtain it.

  • Register addressing — the field names a CPU register, not any memory address.

  • Program-counter-relative addressing — the effective address is formed by adding a displacement to the program counter's contents; the address field is not simply the raw value sitting in the program counter, and the PC's core job is tracking the address of the next instruction to fetch, not storing an already-formed operand address.

  • Indirect addressing (this item) — the field is one level removed: it stores the address of a location that itself stores the effective address, needing two hops to reach the operand.

Explore the full course: Niacl Ao It Specialist

Loading lesson…