INSTRUCTION SET AND EXECUTION IN 8085
Based on the design of the ALU and decoding unit, the microprocessor manufacturer
provides instruction set for every microprocessor. The instruction set consists of both
machine code and mnemonics.
An instruction is a binary pattern designed inside a microprocessor to perform a specific
function. The entire group of instructions that a microprocessor supports is called
instruction set. Microprocessor instructions can be classified based on the parameters such
functionality, length and operand addressing.
Classification based on functionality:
I. Data transfer operations: This group of instructions copies data from source to destination. The content of the source is not altered.
II. Arithmetic operations: Instructions of this group perform operations like addition, subtraction,increment & decrement. One of the data used in arithmetic operation is
stored in accumulator and the result is also stored in accumulator.
III. Logical operations: Logical operation include AND, OR, EXOR, NOT. The operations like AND, OR and EXOR use two operands, one is stored in
accumulator and other can be any register or memory location. The result is stored in accumulator. NOT operation requires single operand, which is stored in accumulator.
IV. Branching operations: Instructions in this group can be used to transfer program sequence from one memory location to another either conditionally or unconditionally.
V. Machine control operations: Instruction in this group control execution of other instructions and control operations like interrupt, halt etc.
Classification based on length:
I. One-byte instructions: Instruction having one byte in machine code Examples are depicted in table
Opcode ~Operand ~Machinecode/He x code MOV ~ A, B ~ 78
ADD ~ M ~ 8 6
2.Two-byte instructions: Instruction having two byte in machine code. Examples are
depicted in Table
3. Three-byte instructions: Instruction having three byte in machine code. Examples are depicted in Table
Addressing Modes in Instructions:
The process of specifying the data to be operated on by the instruction is called addressing.The various formats for specifying operands are called addressing modes. The 8085 has the following five types of addressing:
I. Immediate addressing
II. Memory direct addressing
III. Register direct addressing
IV. Indirect addressing
V. Implicit addressing
1.Immediate Addressing:
In this mode, the operand given in the instruction - a byte or word – transfers to the destination register or memory location.
Ex: MVI A, 9AH
The operand is a part of the instruction.
The operand is stored in the register mentioned in the instruction.
2. Memory Direct Addressing:
Memory direct addressing moves a byte or word between a memory location and register.
The memory location address is given in the instruction.
Ex: LDA 850FH
This instruction is used to load the content of memory address 850FH in the accumulator.
3.Register Direct Addressing:
Register direct addressing transfer a copy of a byte or word from source register to destination register.
Ex: MOV B, C
It copies the content of register C to register B.
4.Indirect Addressing:
Indirect addressing transfers a byte or word between a register and a memory location.
Ex: MOV A, M
Here the data is in the memory location pointed to by the contents of HL pair. The data is
moved to the accumulator.
5.Implicit Addressing.
In this addressing mode the data itself specifies the data to be operated upon.
Ex: CMA
The instruction complements the content of the accumulator. No specific data or operand is
mentioned in the instruction

