Lets discuss the addressing modes available in a CPU in simple.
(All the name used here are hypothetical)
- Immediate Addressing or literal Addressing.
- Register Addressing.
- Direct Addressing.
- Indirect Addressing.
- Indexed Addressing.
Immediate Addressing or literal Addressing.
eg: LOAD R1,#800.
Register Addressing.
eg: LOAD R1 , R2.
Here both R1 and R2 are register addresses(imagine similar addresses of location in real world). From the above command what ever inside the register R2 is moved to R.
Direct Addressing.
eg: LOAD R1 , VALUE .
The content inside the memory cell "VALUE" is loaded to register R1.
in the command itself the address of the memory location is given so that the content inside the memory location called "VALUE" is directly fetched.
Indirect Addressing
- Indirect Register Addressing.
- Indirect Memory Addressing.
Indirect Register Addressing.
eg: LOAD R1 , [R2].
It is a memory location which is inside R2 so that content will be loaded to R1.
Indirect Memory Addressing.
eg: LOAD R1 , [VALUE].
There is another memory location which is inside memory location "VALUE" so that content will be loaded to R1.
Indexed Addressing.
eg: LOAD R1 , VALUE ,[Ri].
"Ri" is this index register it contains an offset value, that value should be added with the address of VALUE then the result will be again an address where the content of it should be searched and loaded into R1.
![]() |
| Fig 1:Indexed Addressing Graphical. |

Comments
Post a Comment