Skip to content
Related Articles

Related Articles

Difference between Direct and Indirect Addressing Modes
  • Last Updated : 04 May, 2020
GeeksforGeeks - Summer Carnival Banner

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.

Example:
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.

Example:

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

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
Recommended Articles
Page :