retagged by
18,338 views
58 votes
58 votes

Which of the following is/are true of the auto-increment addressing mode?

  1. It is useful in creating self-relocating code

  2. If it is included in an Instruction Set Architecture, then an additional ALU is required for effective address calculation

  3. The amount of increment depends on the size of the data item accessed

  1. I only
  2. II only
  3. III only
  4. II and III only
retagged by

4 Answers

Best answer
101 votes
101 votes

In auto increment addressing mode, the base address is incremented after operand fetch. This is useful in fetching elements from an array. But this has no effect in self-relocating code (where code can be loaded to any address) as this works on the basis of an initial base address. 

An additional ALU is desirable for better execution especially with pipelining, but never a necessity. 

Amount of increment depends on the size of the data item accessed as there is no need to fetch a part of a data. 

So, answer must be C only. 

edited by
8 votes
8 votes
Correct answer (C)

Auto increment mode is used for incrementing and depends on size of data.
0 votes
0 votes
After determining the effective address, the value in the base register is incremented by the size of the data item that is to be accessed.
For example, (A7)+ would access the content of the address register A7, then increase the address pointer of A7 by 1 (usually 1 word). Within a loop, this addressing mode can be used to step through all the elements of an array or vector.

So, option (C) is right
Answer:

Related questions

39 votes
39 votes
3 answers
1
56 votes
56 votes
3 answers
3
7 votes
7 votes
4 answers
4
Desert_Warrior asked Jun 3, 2016
6,133 views
In which addressing mode, the effectives address of the operand is generated by adding a constant value to the content of a register?Absolute modeIndirect modeImmediate m...