Difference between Indirect and Implied 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.
Prerequisite - Addressing Modes
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 the ‘@’ character.
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.
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 Implied Addressing Mode.
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 :
|Parameters||Indirect Addressing Mode||Implied Addressing Mode|
|Memory||Multiple memory spaces are used.||No memory Intervention.|
|Operands||Operands are explicit.||Operands are implicit.|
|Type of instruction format||Mostly used in 2 address instructions and more.||Mostly used in zero address and single address instructions.|
|Memory References||3 memory references are required.||No memory references are required.|
|Address Space||The address space is large.||The address space is small.|
|Calculations||Additional calculations are the only way to perform the operation.||No additional calculations are required.|
|Processing Speed||Execution speed is less.||Execution speed is more.|
|Overhead||Additional overhead incurred in searching for data.||No additional overhead incurred in searching for data.|