Addressing Modes (Immediate, Direct, Indirect, Indexed) MCQs

By: Prof. Dr. Fazal Rehman Shamil | Last updated: September 20, 2024

1. In the immediate addressing mode, the operand is:
a) In memory
b) A constant within the instruction
c) In a register
d) Calculated from base and index registers

Answer: b) A constant within the instruction


2. In direct addressing mode, the operand is located:
a) In a register
b) At a specific memory location
c) On the stack
d) In the instruction itself

Answer: b) At a specific memory location


3. In indirect addressing mode, the effective address is:
a) The address of a register
b) Found by adding two values
c) Stored in a register or memory location
d) Directly within the instruction

Answer: c) Stored in a register or memory location


4. Indexed addressing mode is used for:
a) Accessing stack data
b) Accessing consecutive array elements
c) Directly fetching operands
d) Immediate values

Answer: b) Accessing consecutive array elements


5. Which addressing mode is primarily used to implement arrays?
a) Immediate addressing
b) Direct addressing
c) Indexed addressing
d) Register addressing

Answer: c) Indexed addressing


6. In immediate addressing mode, the operand is:
a) Found at the memory address in the instruction
b) The value directly in the instruction
c) Computed using an index
d) Stored on the stack

Answer: b) The value directly in the instruction


7. Which addressing mode uses a pointer to access the operand?
a) Immediate addressing
b) Direct addressing
c) Indirect addressing
d) Indexed addressing

Answer: c) Indirect addressing


8. In indexed addressing, the effective address is obtained by:
a) Adding an index value to a base address
b) Using a constant address
c) Indirectly referencing a pointer
d) Storing a value in the instruction

Answer: a) Adding an index value to a base address


9. In direct addressing, the effective address is:
a) A value from an index register
b) Computed during execution
c) Specified directly in the instruction
d) Found using a pointer

Answer: c) Specified directly in the instruction


10. Which addressing mode is typically the simplest for accessing a value in memory?
a) Indirect addressing
b) Immediate addressing
c) Indexed addressing
d) Direct addressing

Answer: d) Direct addressing


11. In indirect addressing mode, the instruction contains:
a) The actual operand value
b) The memory address of a pointer
c) An index and offset
d) The final effective address

Answer: b) The memory address of a pointer


12. Which addressing mode allows modification of operands during program execution?
a) Immediate addressing
b) Direct addressing
c) Indirect addressing
d) Register addressing

Answer: c) Indirect addressing


13. Which of the following is an example of immediate addressing?
a) MOV AX, [BX]
b) MOV AX, 10H
c) MOV AX, [1234H]
d) MOV AX, [BP+SI]

Answer: b) MOV AX, 10H


14. The indexed addressing mode is ideal for:
a) Jumping to a subroutine
b) Accessing individual array elements
c) Multiplying two registers
d) Performing stack operations

Answer: b) Accessing individual array elements


15. In direct addressing, the address of the operand is:
a) Stored in a register
b) Provided as part of the instruction
c) Computed at runtime
d) Found in memory indirectly

Answer: b) Provided as part of the instruction


16. In indexed addressing mode, which register is typically used?
a) AX
b) SI or DI
c) BX
d) BP

Answer: b) SI or DI


17. Which addressing mode requires fewer bits for the operand field?
a) Immediate addressing
b) Direct addressing
c) Indirect addressing
d) Indexed addressing

Answer: a) Immediate addressing


18. Which addressing mode adds an index value to a base address stored in a register?
a) Direct addressing
b) Indirect addressing
c) Indexed addressing
d) Register addressing

Answer: c) Indexed addressing


19. Which addressing mode is useful for looping through array elements?
a) Immediate addressing
b) Indexed addressing
c) Direct addressing
d) Register addressing

Answer: b) Indexed addressing


20. In indirect addressing mode, the memory address of the operand is:
a) Specified directly in the instruction
b) Found by adding two registers
c) Stored in a register or another memory location
d) Computed from a base address and index

Answer: c) Stored in a register or another memory location


21. In immediate addressing mode, the instruction specifies:
a) The address of the operand
b) The value of the operand
c) The base address for indexed access
d) The address of a pointer

Answer: b) The value of the operand


22. Which addressing mode requires the use of an index register?
a) Immediate addressing
b) Direct addressing
c) Indexed addressing
d) Indirect addressing

Answer: c) Indexed addressing


23. In direct addressing mode, the address field contains:
a) A constant value
b) The memory address of the operand
c) A pointer to the operand
d) An index value

Answer: b) The memory address of the operand


24. Which addressing mode is often used in assembly language for array manipulation?
a) Direct addressing
b) Immediate addressing
c) Indexed addressing
d) Indirect addressing

Answer: c) Indexed addressing


25. In indirect addressing, the operand’s address is:
a) Calculated by adding an index
b) Specified directly in the instruction
c) Found through a register or memory location
d) Contained in the program counter

Answer: c) Found through a register or memory location


26. In immediate addressing mode, the operand is:
a) Found in memory
b) Found in a register
c) Provided in the instruction
d) Found using a pointer

Answer: c) Provided in the instruction


27. Which addressing mode would you use to access elements in an array?
a) Direct addressing
b) Indirect addressing
c) Immediate addressing
d) Indexed addressing

Answer: d) Indexed addressing


28. In direct addressing, the memory address is:
a) Calculated using an index
b) Found in the instruction itself
c) Stored in a register
d) Found indirectly

Answer: b) Found in the instruction itself


29. What does indirect addressing mode allow the CPU to do?
a) Perform arithmetic directly
b) Access operands via a pointer in memory
c) Access immediate data directly
d) Compare two memory addresses

Answer: b) Access operands via a pointer in memory


30. Indexed addressing is typically used to:
a) Transfer control to a subroutine
b) Access array elements in sequence
c) Perform indirect jumps
d) Load constant values into registers

Answer: b) Access array elements in sequence


31. Which addressing mode stores the operand’s address in a register or memory location?
a) Immediate addressing
b) Indirect addressing
c) Direct addressing
d) Indexed addressing

Answer: b) Indirect addressing


32. The operand in immediate addressing mode is:
a) A memory location
b) A register value
c) A constant specified in the instruction
d) A calculated effective address

Answer: c) A constant specified in the instruction


33. Which of the following addressing modes is best suited for handling loops?
a) Direct addressing
b) Immediate addressing
c) Indexed addressing
d) Register addressing

Answer: c) Indexed addressing


34. Indirect addressing mode is useful when:
a) A pointer is used to reference a memory location
b) A constant needs to be loaded into a register
c) An index value needs to be added to a base
d) Accessing stack data

Answer: a) A pointer is used to reference a memory location


35. The value in indexed addressing mode is calculated by:
a) A fixed memory location
b) An index value added to a base address
c) A pointer in a register
d) An immediate constant

Answer: b) An index value added to a base address


36. In immediate addressing mode, the operand is:
a) A register
b) A memory location
c) A constant value
d) Computed at runtime

Answer: c) A constant value


37. Which addressing mode is generally faster in terms of execution?
a) Indirect addressing
b) Immediate addressing
c) Direct addressing
d) Indexed addressing

Answer: b) Immediate addressing


38. Which addressing mode uses both base and index registers for calculation?
a) Direct addressing
b) Immediate addressing
c) Indexed addressing
d) Indirect addressing

Answer: c) Indexed addressing


39. Which of the following addressing modes is often used for stack operations?
a) Direct addressing
b) Indirect addressing
c) Immediate addressing
d) Indexed addressing

Answer: b) Indirect addressing


40. In indexed addressing mode, the index register is typically used to:
a) Access a fixed memory address
b) Modify immediate values
c) Reference an element in an array
d) Calculate arithmetic expressions

Answer: c) Reference an element in an array


41. Indirect addressing is often used for:
a) Stack manipulation
b) Array indexing
c) Jump instructions
d) Immediate data access

Answer: a) Stack manipulation


42. Which addressing mode requires the least memory to store instructions?
a) Indirect addressing
b) Immediate addressing
c) Direct addressing
d) Indexed addressing

Answer: b) Immediate addressing


43. The operand in indirect addressing mode is found:
a) In the instruction itself
b) Using an offset and base address
c) Through a pointer in memory
d) In a register directly

Answer: c) Through a pointer in memory


44. Which addressing mode is preferred for multi-dimensional array access?
a) Immediate addressing
b) Direct addressing
c) Indexed addressing
d) Indirect addressing

Answer: c) Indexed addressing


45. In direct addressing mode, the operand address is:
a) Calculated during execution
b) Embedded in the instruction
c) Found indirectly through a register
d) Retrieved from the stack

Answer: b) Embedded in the instruction


46. Which addressing mode allows the use of a constant value directly in an instruction?
a) Immediate addressing
b) Indirect addressing
c) Indexed addressing
d) Direct addressing

Answer: a) Immediate addressing


47. Indexed addressing mode combines:
a) A base address and an index value
b) A register and an immediate value
c) Two pointer registers
d) A constant and a direct address

Answer: a) A base address and an index value


48. The immediate addressing mode is beneficial for:
a) Array manipulation
b) Arithmetic operations with constants
c) Indirect memory access
d) Jumping between program segments

Answer: b) Arithmetic operations with constants


49. Which addressing mode involves using a pointer stored in a register to access data?
a) Immediate addressing
b) Indexed addressing
c) Indirect addressing
d) Direct addressing

Answer: c) Indirect addressing


50. Which addressing mode is often faster for accessing small constants?
a) Direct addressing
b) Immediate addressing
c) Indirect addressing
d) Indexed addressing

Answer: b) Immediate addressing

Read More Computer Architecture MCQs

  1. SET 1: Computer Architecture MCQs
  2. SET 2: Computer Architecture MCQs
  3. SET 3: Computer Architecture MCQs
  4. SET 4: Computer Architecture MCQs
  5. SET 5: Computer Architecture MCQs
  6. SET 6: Computer Architecture MCQs
  7. SET 7: Computer Architecture MCQs
  8. SET 8: Computer Architecture MCQs
  9. SET 9: Computer Architecture MCQs