MICROPROCESSOR
PART 16
SIBIN K
Electrical Subject Matter Expert
Addressing Modes
● Immediate addressing mode
● Register addressing mode
● Direct addressing mode
● Register indirect addressing mode
● Indexed addressing mode
● Implied addressing mode
Immediate Addressing:
● Data is immediately available in the instruction.
For example -
● ADD A, #77; Adds 77 (decimal) to A and stores in A
● ADD A, #4DH; Adds 4D (hexadecimal) to A and stores in A
● MOV DPTR, #1000H; Moves 1000 (hexadecimal) to data pointer
Register Addressing:
This way of addressing accesses the bytes in the current register bank. Data is available in
the register specified in the instruction. The register bank is decided by 2 bits of Program
Status Word (PSW).
For example-
● ADD A, R0; Adds content of R0 to A and stores in A
Direct Addressing:
The address of the data is available in the instruction.
For example -
● MOV A, 088H; Moves content of SFR TCON (address 088H)to A
Register Indirect Addressing:
The address of data is available in the R0 or R1 registers as specified in the instruction.
For example -
● MOV A, @R0 moves content of address pointed by R0 to A
● MOVX A, @R1: X denotes external data memory. External data memory can only be
accessed by register indirect addressing mode.
Indexed addressing mode
● Only program memory can be accessed in the index addressing
● Either the DPTR or PC can be used as an index register
● MOVC A, @A+DPTR; Moves content of address pointed by A+DPTR to A
● MOVC A, @A+PC; Moves content of address pointed by A+PC to A
Implied addressing mode
● Inherent in the instruction, these refers to a specific register such as accumulator or
DPTR
● RL A ; rotate accumulator left
● SWAP A ; exchange lower nibble and higher nibble within accumulator