Which of the following is/are true of the auto-increment addressing mode?
I. It is useful in creating self-relocating code. II. If it is included in an Instruction Set Architecture, then an additional ALU is required for effective address calculation. III. The amount of increment depends on the size of the data item accessed.
- AI only
- BII only
- III only
- DII and III only
Explanation
Auto-increment is used for sequential traversal (arrays, stacks), not specifically self-relocating code (that's more associated with PC-relative addressing) — I is false. The increment can be done with the existing ALU (sequentially, not requiring a SEPARATE dedicated ALU) — II is false. The increment amount must match the accessed data item's size (1 for byte, 4 for word, etc.) — III is definitely true.
Source: GATE CS 2008 (2008)
This question is part of a 15-day revision cycle — sign in and Project Forge will bring it back the day before you'd forget it.