Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Difference between Direct and Indirect Addressing Modes

  • Difficulty Level : Basic
  • Last Updated : 04 May, 2020

Prerequisite: Addressing Modes

1. Direct Addressing Mode:
In direct addressing mode, address field in the instruction contains the effective address of the operand and no intermediate memory access is required. Now a days it is rarely used.

Attention reader! Don’t stop learning now.  Practice GATE exam well before the actual exam with the subject-wise and overall quizzes available in GATE Test Series Course.

Learn all GATE CS concepts with Free Live Classes on our youtube channel.

Add the content of R1 and 1001 and store back to R1:

Add R1, (1001) 

Here 1001 is the address where operand is stored.

2. Indirect Addressing Mode:
In Indirect addressing mode, address field in the instruction contains the memory location or register where effective address of operand is present. It requires two memory access. It is further classified into two categories: Register Indirect, and Memory Indirect.


LOAD R1, @500

Above instruction is used to load the content of memory location stored at memory location 500 to register R1. In other words we can say, effective address is stored at memory location 500.

Difference between Direct and Indirect Addressing Modes:

S.NODirect Addressing ModeIndirect Addressing Mode
1.Address field contains the effective address of operandAddress field contains reference of effective address
2.Requires only one memory referenceRequires two memory references
3.Fast addressingSlower than direct addressing mode
4.No further classificationFurther classified into two categories
5.No further calculation is required to perform the operationRequire further calculation to find the effective address
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!