8085: Addressing Modes

Written by:  • Edited by: KennethSleight
Published Oct 11, 2009
• Related Guides: Microprocessors

Learn about the addressing modes of 8085 microprocessor, what are the different types of addressing modes available for 8085 microprocessor and the significance of the addressing modes explained with examples.

Introduction

We have been doing a series of microprocessor education articles and till date we have discussed about the evolution of microprocessors, architecture, pin diagram and signal diagrams of 8085 microprocessor. We also discussed about how the signals helps in processing data, storing them and executing them.

But we cannot carry out a process with a microprocessor with only signals and instructions. We need a data to operate. Every instruction has to operate on a data.

There is a method in which the instructions address the data to be operated. The method of specifying the data to be operated by the instruction is known as addressing.

Now we know what is addressing. But what are addressing modes?

The way by which the microprocessor identifies the operands for a particular instruction is known as Addressing mode.

Types of Addressing Modes

The process of identifying the operands for a particular instruction can be carried out in several ways. The various types of addressing modes are as shown below.

  • Immediate addressing mode
  • Direct addressing mode
  • Register addressing mode
  • Register indirect addressing mode
  • Implicit addressing mode

Immediate Addressing Mode:

In this type of addressing mode the operand is specified within the instruction itself.

Let us discuss with an example.

Consider this instruction:

ADI 34H – This instruction adds the immediate data, 34H to the accumulator.

34H is the data here. H represents Hexadecimal value and the immediate value is added to the accumulator. In this case 34H is added to the accumulator. Suppose if accumulator has a value 8H and when this instruction is executed, 34H is added to the 8H and the result is stored in accumulator.

In the above instruction the operand is specified within instruction itself.

Direct Addressing Mode:

In this mode of addressing, the address of the data (operand) is specified within the instruction.

There is a subtle difference between the direct addressing modes and immediate addressing modes. In immediate addressing mode the data itself is specified within instruction, but in direct addressing mode the address of the data is specified in the instruction.

Example:

OUT 10H

LDA 4100H

STA 2000H

Consider the instruction STA 2000H

When this instruction is executed, the contents of the accumulator are stored in the memory location specified. In the above example the contents of accumulator are stored in memory location 2000H.

Direct addressing mode
click to enlarge

Register Addressing Mode:

In this type of addressing mode the instruction specifies the name of the register in which the data is available and Opcode specifies the name (or) address of the register on which the operation would be performed.

Example:

MOV A, B

Here the Opcode is MOV. If the above instruction is executed, the contents of Register B are moved to the Register A, which is nothing but the accumulator.

register addressing mode
click to enlarge

Other examples:

ANA B

On executing the above instruction the contents of Register B or logically ANDed with contents of register A (accumulator).

SUB H

If we execute the above instruction the contents of Register H will be subtracted from the contents of the accumulator.

Register Indirect Addressing Mode:

This is indirect way of addressing. In this mode the instruction specifies the name of the register in which the address of the data is available.

Example:

MOV A, M

SUB M

DCR M

Consider MOV A, M. This instruction will move the contents of memory location, whose address is in H-L register pair to the accumulator.

M represents the address present in the H-L register pair. So when MOV A, M is executed, the contents of the address specified in H-L register pair are moved to accumulator.

Register Indirect addressing mode
click to enlarge

Implicit Addressing Mode:

There are certain instructions in 8085 which does not require the address of the operand to perform the operation. They operate only upon the contents of accumulator.

Example:

CMA

RAL

RAR

CMA complements the contents of accumulator.

If RAL is executed the contents of accumulator is rotated left one bit through carry.

If RAR is executed the contents of accumulator is rotated right one bit through carry.

Addressing mode-Types Summary
click to enlarge

Thus the various addressing modes of 8085 microprocessor are discussed in detail.

Image Courtesy:

Manoharan, P.S. (2009) Microprocessors and its Applications. Chennai: Charulatha Publications


Comments

Showing all 5 comments
 
Prabhakaran Dec 31, 2010 11:20 AM
Addressing mode of 8085
Its very useful for me....
Thank u..
If it has more content it will be good..
umeshhh Aug 11, 2010 1:31 AM
addressing modes of intel 8085
plz send me the sufficient notes where the point should be discribed very beautifully with the diagram...... above the answer is good but i need exact answer....... thanku from umeshh
rnku panigrahi Jun 16, 2010 12:02 PM
RE: 8085: Addressing Modes
this is not enough.
plese send with example and digram.
shriya goswami Dec 17, 2009 6:00 AM
RE: 8085: Addressing Modes
plz send me the Timing diagram of instruction of 8085 & oblized
Rohit Singh Nov 30, 2009 11:08 PM
8085
Please send me the detailed notes on 8085 MP addressing modes and its architecture and also pin diagram with pin descriptions on an urgent as my exams are going to be held from 10th dec.09.
 
blog comments powered by Disqus
Email to a friend