8085 Addressing Modes 8085 Microprocessor by Ravinder Nath Rajotiya - August 31, 2020August 31, 20200 Share on Facebook Share Send email Mail Print Print Table of Contents Toggle Addressing Modes of 8085:Immediate addressing modeImplicit addressing mode:Register addressing mode:Direct addressing ModeIndirect memory addressing mode Addressing Modes of 8085: The operand or the data item may reside in internal registers, RAM, may come from input device or can be assigned as immediate as part of an instruction. For accessing an operand there is a well-defined way or method. Therefore, we can define addressing modes as the methods of accessing the data byte(operands). 8085 has the following addressing modes : a. Immediate Addressing Mode b. Implicit or Implied Addressing Mode c. Direct Register Addressing Mode d. Direct Memory Addressing Mode e. Indirect memory addressing mode These modes are explained in the following paragraph Immediate addressing mode In this addressing mode the data byte is defined as part of the instruction. 8085 microprocessor supports an immediate to register or immediate to memory assignment, and use the instruction MVI for this purpose. Format The general Syntax is : MVI Reg/Mem 8-bit Data Example: MVI A, 55h ; Transfers an immediate number 55h to Accumulator MVI B, 55h ; Transfers an immediate number 55h to Register B MVI M, 55h ; Transfers an immediate number 55h to Memory pointed by HL pair ADI, SUI, ACI, SBI, ANI, XRI, ORI, CPI, LXI Implicit addressing mode: This addressing mode does not specify any additional data, but the data is implied with the instruction, the data is referred by the name of the instruction. As an example CLA stands for clear the accumulator. Here no additional reference is made to locate the data. Instruction of this type is 1-byte instructions. Format Examples: CMA (Complement the Accumulator) RAL (Rotate Accumulator left through carry) RAR (Rotate accumulator right through carry) XCHG (Exchange the content of H-L register pair with D-E register pair) RLC (Rotate Left) RRC (Rotate Right) CMC (Complement Carry) STC (Set Carry) RIM (Read Interrupt Mask) SIM (Set Interrupt mask) Register addressing mode: This addressing mode is used t transfer the data item from source register to a destination register. The source register must be loaded with data before using this instruction. This addressing mode uses MOV instruction for transferring data among registers. Format: Syntax: MOV Rd, Rs Here Rs is source register from the general purpose registers and Rd is the destination register from the general purpose registers. Examples: MOV A, B ; Transfers 8-bit data from register B to accumulator MOV D, E ; Transfers 8-bit data from register E to register D PCHL INR R INX Rp DCX Rp DAD Rp ( Add Rp with HL) ANA r XRA r ORA r Direct addressing Mode The direct addressing mode refers to the data from / to the memory for transfer to or from the registers. Use of this addressing mode require setting the memory pointer. 8085 uses MOV instruction for this purpose. Syntax: OPCODE Rd, Addr OPCODE Addr, Rs Usage example: LHLD Addr ; Loads HL pair with LDA Addr STA Addr SHLD Addr Indirect memory addressing mode In this addressing mode the data is accessed indirectly from the memory. The address from where the data is to be fetched is to be found at other place. 8085 uses instructions such as LDAX, STAX, LHLD, SHLD for indirect addressing. These are explained below: Format: Example LDAX [Rp] ; Will load accumulator with data from address given in register pair Rp(BC, DE, HL) STAX [Rp] ; Will store data given in accumulator in memory at address given in register pair Rp. MOV A, M ; Data Transfer from the memory whose address is pointed by HL pair MOV M, A Share on Facebook Share Send email Mail Print Print