EE-16102: MICROPROCESSOR & COMPUTER ORGANIZATION
8085 Microprocessor: Instruction Set
Dr. Vishal Kumar Gaur
Microprocessor: 8085A
Instruction Set
Addressing Modes
Most of the instruction execution requires two operands, e.g., transfer of data between two
registers.
Whenever two operands are involved in an instruction, the first operand is assumed to be in
any register of the 𝜇𝑝 itself.
The second operand may be located in one of the following.
i. In any general purpose register of the microprocessor.
ii. In a particular external memory location.
iii. It can be immediately available in an instruction format.
iv. In an I/O device.
How the microprocessor knows the position of these operands?
The method of identifying the second operands position by the instruction format is
knows as addressing modes.
2
Microprocessor: 8085A
Instruction Set
Addressing Modes
1.Register Addressing Mode
2.Direct Addressing Mode
3.Register Indirect Addressing Mode
4.Immediate Addressing Mode
5.Implied Addressing Mode
3
Microprocessor: 8085A
Instruction Set
1. Register Addressing Modes
When the operands for any instruction are available in internal general purpose
registers, only the registers need to be specified as the address of the operands.
Such instruction are said to use the register addressing mode.
These instructions are one byte instructions. Within that byte i.e. op-code, the
registers are specified.
4
Microprocessor: 8085A
Instruction Set
1. Register Addressing Modes
For example, MOV r1, r2; ADD r; XCHG, etc.
MOV r1, r2: The opcode for the instruction is 01 DDD SSS.
The first two bits 01 specify the MOV operation e.g., MOV B, A
The opcode of the instruction is (01 000 111)2 = 47H
ADD H. The opcode is (10 000 100)2 = 84H
5
Microprocessor: 8085A
Instruction Set
2. Direct Addressing Modes
In this addressing mode, the instruction contains directly the address of the
operand (external register) involved in the transfer.
The 8085A provides16-bit memory address.
The address contained in the instruction will be 16-bit long as a second and third
bytes of the instruction.
Thus it is invariably a 3-byte instruction.
6
Microprocessor: 8085A
Instruction Set
2. Direct Addressing Modes
For example:
LDA addr. This is an ALP statement ‘addr’ in operand field is a symbolic name
given to 16-bit address.
7
Microprocessor: 8085A
Instruction Set
3. Register Indirect Addressing Modes
In this case, the instruction specifies a register pair which contains the address of
the memory where the data is located or into which the data in to be placed.
Thus the address of the operand is given indirectly through a register pair.
In other words, the operand is in memory location or external register whose
address is available in an internal general purpose register pair.
8
Microprocessor: 8085A
Instruction Set
3. Register Indirect Addressing Modes
Opcode
MOV r, M
<B2>
It transfers single byte from an external register (M) to any of internal register.
External register (M) means memory location pointed by H,L register pair.
LDAX rp
This instruction load the accumulator with content available at memory location
pointed by internal register pair. Opcode
<B2>
Here, register pair are used as memory register pointer. <B3>
9
Microprocessor: 8085A
Instruction Set
4. Immediate Addressing Mode
In this type of addressing mode, the operand is available directly in the instruction
itself.
If the operand data involved is of 8-bits, then the instruction is of two bytes
If 16-bit data is involved in the instruction, then the first byte is opcode at memory
location N followed by the lower order data byte at memory location N+1 and
higher order data byte at memory location N+2.
MVI r, DATA
Move the 8-bit data immediately available in the instruction as the 2 nd byte to
destination register.
10
Microprocessor: 8085A
Instruction Set
5. Implied Addressing Mode
There are certain instructions that operate on one operand.
Such instructions assume that the operand is in the accumulator and, therefore,
need not specify any address.
Many instructions of logical group like RLC, RRC, RAR, RAL, and CMA fall into this
category.
All these are one byte instruction.
Sometimes, instructions specify address of one operand, use implied addressing
for the other operand.
11
Thank You
12