HomeEducationWhat is Addressing Modes of 8085 Microprocessor?

What is Addressing Modes of 8085 Microprocessor?

Before knowing about what is addressing mode, you should know what are the opcode, operand, and mnemonics. We understand them with an example,

Addressing modes of 8085 microprocessor

What is the mnemonics and what is the operand in the instruction written above? MOV is a mnemonic that will instruct the microprocessor to transfer or copy the data from one register to another register.

The MOV instruction is written for humans neither for the microprocessor.

The microprocessor understands MOV instruction with a code like 3E, which is known as Opcode or operation Code.

Mnemonic will instruct the microprocessor on which operation needs to perform. I hope you understand what is mnemonic and what is opcode.

Now let’s understand what is operand. The data on which we perform operations are known as the operand.

Like MOV operation is being performed on registers A and B. So, A and B are operands. Operands cannot be just registers, it can be immediate data or in the form of address, etc.

Each instruction requires data to be executed, so there are many ways or methods in which data can be assigned for instructions. These methods are called addressing modes of 8085 microprocessor.

Types of Addressing Modes of 8085

Different addressing modes in 8085 are discussed below,

  • Direct 8085 Addressing Mode
  • Register Addressing Mode
  • Register Indirect Addressing Mode
  • Immediate Addressing Modes of 8085
  • Implicit or Implied Addressing Mode

Direct Addressing Modes of 8085

In this mode, the address of the data is given in the instruction. Let’s understand it with an example,

In the above figure, LDA 2001, what does this instruction mean? Load the data to the accumulator stored at the 2001 memory location. The data stored at the 2001 memory location is 35H. After this instruction, the accumulator will have 35H.

Direct Addressing Mode

STA  2002H: This instruction says that store the data of the accumulator to the specified memory location i.e. 2002H.

Direct addressing modes of 8085

For Example,

MVI A, 30 (The data 30H will move into the accumulator, now A = 30

STA 2002 (after this instruction the data of accumulator (i.e. 30) store at 2002H memory location as shown in the figure.

Direct Addressing Mode

LHLD 2000H: The Data of the memory location is load into the H-L register pair.

LHLD Direct addressing modes of 8085

After the execution of this instruction, stored data at memory location 2000H (i.e. 78) will load into register L. The data of the memory location 2001H (i.e. 52H) will load into register H. (as Shown in the figure)

Register Addressing Mode

In this mode, the data or operand is specified in the register like A, B, C, D, E, H &L. This register is of 8 bits. You can use B-C, D-E, and H-L register pair to hold 16-bit data. For Example:

MVI B, 65H   (65 will move into register B. Now, B = 65)

MOV A, B (the content of register B i.e. 65 moves into accumulator)

When the operation is performed on the operand and the operand (data) is load or move or copy or stored in the register is called register addressing mode of 8085.

For Example,

MVI A, 35H (The 35H is move or copy into register A. Now register A have 35H)

MVI B, 10H (B = 10H)

ADD B (The content of register B is add with the content of accumulator and result will save into accumulator) (A=A+B => A=35+10 => A=45H) (after the execution of this instruction accumulator A will have 45H)

Immediate Addressing Mode

In this mode, the data or operand is specified in the instruction itself. For example:

MVI A, 35H (Move 35H into accumulator)

ADI 80H (The Content of the accumulator will add with 80H)

LXI H, 2498H (Load the content 2498 to H-L register pair. H = 24 and L = 98H)

SBI 05H (Subtract 05H data from accumulator with borrow)

Register Indirect Addressing Mode

This addressing mode is similar to the direct addressing mode. The only difference is that the address of the operand or data will hold by the register pair.

The Data at 2501H memory location is 30H.

Register Indirect addressing modes of 8085

LDAX H (Load data from memory location which is held by H-L register pair)

addressing modes of 8085

Implicit/Implied Addressing Mode

The data or operand is specified in the instruction itself. No need to provide data in these instructions. Like,

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)

Frequently Asked Questions

Q1. What are the Addressing Modes of 8085?

Ans. Addressing mode is a way of Specified Data to the Instruction.

Q2. How Many Types of Addressing Modes are there?

Ans. There are 5 addressing modes of 8085.

  1. Immediate Addressing Mode
  2. Direct Addressing Mode
  3. Indirect Addressing Mode
  4. Register Addressing Mode
  5. Implied Addressing Mode

Q3. What is Direct Addressing Mode With Example?

Ans. In the Direct Addressing mode, The Memory Address of the Data is to be specified in the instruction. For example,

LDA 2005 (This means that the value at the 2005 location will load into the accumulator.)

Q4. What is the Difference between Direct and Immediate Addressing Modes?

Direct Addressing Mode

Immediate Addressing Mode

In the direct addressing mode, the memory address of the data and operand is given within the instruction.In Immediate Addressing mode, Data or operand is specified in the Instruction.
For Example, LDA 2005 (The Data stored at location 2005, load into the accumulator. )For Example, MVI A, 35 (Move the data 35H to accumulator)
Speed is slower because it takes a fetch cycle (fetch data from memory).Its speed is faster than Direct addressing mode (because it does not need to fetch cycle.)

Q5. What Is The Difference Between Direct and Indirect Addressing Mode?

Direct Addressing Mode

Indirect Addressing Mode

Memory Address of data or operand specified within the instruction.The Data’s memory address is held by Register, which is specified within the instruction.
For example,  STA 2003 (The Data of the accumulator store at memory location 2003H)LDAX H (Load the data from Memory Address Which is held by the H-L register pair to accumulator)
This mode is faster.This mode is slower

Q6. What is the advantage of addressing modes in an 8085/8086 microprocessor?

Ans. The addressing mode is designed according to the need of the programmer. Addressing mode has been made, how the programmer should use the data in the program. It gives flexibility to the programmer.

We have read about addressing modes of 8085, if you have any problem related to this topic, then you can ask your questions in the comment box.

Hello, My Name is Abhinav. I am an Author in the Education Category of Trickyedu. I have Done My Engineering in Computer Science from DIT University. I have a good command on Science, Programming Language, and microprocessors. So, I choose this platform to share my knowledge and experience.


Please enter your comment!
Please enter your name here

Most Popular