Difference between Indirect and Implied Addressing Modes

Prerequisite – Addressing Modes
1. Indirect Addressing Mode :
This is the mode of addressing where the instruction contains the address of the location where the target address is stored. So in this way it is Indirectly storing the address of the target location in another memory location. So it is called Indirect Addressing mode.

There are 2 types(or versions) of Indirect Addressing Mode: Memory Indirect, and Register Indirect.

  1. Memory Indirect –
    In this type we directly mention the address of the memory location in the instruction either enclosed by parenthesis or preceded by ‘@’ character.

    Example :



    LOAD R1, (1005) 
    or 
    LOAD R1, @1005 
  2. Register Indirect –
    In this type the address of the target memory location will be stored in the register and the register will be mentioned in the instruction.

    Example :

    MOV R@, 1005
    LOAD R1, (R2) 

2. Implied Addressing Mode :
This is the mode of addressing where the operand is specified implicitly in the definition of the instruction. This mode of addressing is normally used in zero address (e.g., Stack operations) and one address (e.g., MUL AL) instructions. Hence the operand is implied inside the instruction, it is called as Implied Addressing Mode.

Example :

MOV CL, 05
L1: INC AL
    LOOP L1 

Here AL will be incremented by 1 every time the loop executes. Hence 1 is implied inside the instruction INC AL.



Difference between Indirect and Implied Addressing Modes :

Sl. No Indirect Addressing Mode Implied Addressing Mode
1. Multiple memory spaces are used. No memory Intervension
2. Operands are explicit Operands are implicit
3. Mostly used in 2 address instructions and more Mostly used in zero address and single address instructions
4. 3 memory references are required No memory references are required
5. Address space is large Address space is small
6. Additional calculations are the only way to perform operation No additional calculations are required
7. Execution speed is less Execution speed is more

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up


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.