8085 Addressing Modes

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

  1. 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

  1. 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)

  1. 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

  1. 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

  1. 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

Updated: August 31, 2020 — 4:41 pm

Leave a Reply

Your email address will not be published. Required fields are marked *

care4you © 2020 Connect On Facebook DMCA.com Protection Status