Skip to content
Related Articles
Open in App
Not now

Related Articles

Difference between Indirect and Immediate Addressing Modes

Improve Article
Save Article
  • Last Updated : 30 Jun, 2022
Improve Article
Save Article

Prerequisite – Addressing Modes 

1. Indirect Addressing Mode: 

In indirect addressing mode, the address field in the instruction points to the memory location or register where the effective address of the operand is present. 

Two memory accesses are required. One to get the value stored at the given address field. Second to get the effective address of operand at the address found. It can be further classified as Register Indirect addressing and Memory Indirect Addressing.

  

Example: Add the contents of the address stored at register B.

ADD [B] 

In the address field of the instruction, here register B holds the address of the operand. 

2. Immediate Addressing Mode: 

In immediate addressing mode, the operand is a part of the instruction.

Here the Operand = Address Field 

 

Example: Add 8 to the accumulator.

ADD 8 

No memory reference is required to fetch data. So no additional calculations are required to work out the effective address. It is a fast method. But the downside is that it has a limited range.

Now let’s compare Indirect and Immediate Addressing Modes.

S. No.ParametersIndirect Addressing ModeImmediate Addressing Mode
1.Address FieldThe address field of the instruction holds the address of the operand. There is no address field as the operand is a part of the instruction. It has an operand field instead of an address field.
2.Memory ReferenceIt requires two references to memory.It does not require any reference to memory for fetching data.
3.Process SpeedIt is slower compared to the immediate mode.It is a faster process.
4.RangeIt has more range than in immediate mode.It has a limited range.
5.CategoriesIt is further classified into two categories- Memory Indirect and Register IndirectNo further classification.
6.ExampleADD [B]ADD 5
7.AdvantageAvailability of enormous address space.Memory reference is not required.
8.DisadvantageMore memory references are required.Limitation on operand value
9.ApplicationIt aids in the implementation of pointers and arrays as arguments.Registers are initialized to a fixed value.
My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!