Difference between Direct and Immediate Addressing Modes

Prerequisite – Addressing Modes

1. Direct Addressing Mode:
In direct addressing mode, the address field contains the address of the operand.

Effective Address (EA) = address field of operand 

Example: Add the contents of register 1001 to the accumulator.

Add (1001) 

Only a single memory reference is required to access data. So no additional calculations are required to work out effective address.

2. Immediate Addressing Mode:
In immediate addressing mode, the operand is a part of the instruction.

Here the Operand = Address Field 

Example: Add 5 to the accumulator.

ADD 5 

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 Direct and Immediate addressing modes.

Direct Addressing Mode Immediate Addressing Mode
Address fields contains the effective address of operand There is no address field as the operand is a part of the instruction.
It requires one reference to memory. It does not require any reference to memory.
It is slower compared to immediate mode. It is a faster process.
It has more range than in immediate mode. It has a limited range.
Example: Add (1001) Example: ADD 5

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.