---
title: "Classification of 8085 instructions"
subject: "Microprocessor"
chapter: 2
key: "semester_4/microprocessor:8085-instruction-classification"
source: https://www.bctengineer.com/q/semester_4/microprocessor/8085-instruction-classification
site: BCT Engineering
---

# Classification of 8085 instructions

Microprocessor · Chapter 2: Programming with 8085 Microprocessor

- Asked in: 2070 Bhadra, 6+2 marks
- Video: [Classification of Instruction Set in 8085 (Microprocessor and Computer Architecture)](https://www.youtube.com/watch?v=f9oAlPBmyxM) — Learn IT with Yuba Raj
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_4/microprocessor/8085-instruction-classification
- Whole chapter: https://www.bctengineer.com/md/semester_4/microprocessor/chapter-2

## Question

In how many ways 8085 instructions can be classified? Explain with examples. What is the purpose of the branching instructions?

## Short answer

8085 instructions are classified by function into data transfer, arithmetic, logical, branching, and machine control, and by size into one, two, or three bytes. Branching instructions change the PC to implement loops, decisions, subroutines, and interrupt service routines.

## Answer

The 8085 instructions are classified in two ways.

#### (a) By function (five groups)
1. **Data transfer**: copy data between registers, memory and I/O without changing the source. `MOV A,B`, `MVI C,05H`, `LDA 2050H`, `STA 3000H`, `LXI H,2000H`, `XCHG`, `PUSH B`, `IN 80H`, `OUT 81H`.
2. **Arithmetic**: add, subtract, increment, decrement. `ADD B`, `ADI 05H`, `SUB C`, `INR A`, `DCR M`, `INX H`, `DAD B`, `DAA`.
3. **Logical**: AND, OR, XOR, compare, rotate, complement. `ANA B`, `ORI 0FH`, `XRA A`, `CMP B`, `CPI 05H`, `RLC`, `RAR`, `CMA`.
4. **Branching**: change the normal sequence of execution. `JMP 3000H`, `JZ`, `JNC`, `CALL 4000H`, `RET`, `RST 3`, `PCHL`.
5. **Machine control**: control the processor operation. `NOP`, `HLT`, `EI`, `DI`, `RIM`, `SIM`.

#### (b) By instruction size
| Type | Bytes | Example |
|---|---|---|
| One-byte | 1 | `MOV A,B`, `ADD C`, `RET` |
| Two-byte | 2 | `MVI A,32H`, `ADI 05H`, `OUT 80H` |
| Three-byte | 3 | `LDA 2050H`, `JMP 3000H`, `LXI H,1234H` |

#### Purpose of branching instructions
Branching (jump, call, return, restart) instructions change the content of the program counter, so the next instruction is fetched from a different address instead of the next sequential address. They are used to:
- Implement loops and repeat a block (e.g., `JNZ LOOP`).
- Take decisions using flags (conditional jumps like `JZ`, `JC`).
- Call subroutines and return (`CALL`, `RET`) so code can be reused.
- Jump to interrupt service routines (`RST n`).

**Types**: unconditional (`JMP`, `CALL`, `RET`) and conditional (`JZ`, `JNZ`, `JC`, `JNC`, `JP`, `JM`, `JPE`, `JPO`, `CZ`, `RNC` ...), which act only if the flag condition is true.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. In which two ways are 8085 instructions classified?
   A. By addressing mode and by clock speed
   B. By function (5 groups) and by instruction size (1, 2 or 3 bytes)
   C. By number of flags affected and by number of registers used
   D. By conditional/unconditional and by 8-bit/16-bit
   Answer: B. Instructions are grouped by function (data transfer, arithmetic, logical, branching, machine control) and by size (one-, two-, three-byte). (Key point: Two classifications: by function (5 groups) and by size (1/2/3 bytes))

2. Which set is correctly matched as one-byte, two-byte and three-byte instructions?
   A. MVI A,32H / MOV A,B / LDA 2050H
   B. MOV A,B / JMP 3000H / OUT 80H
   C. MOV A,B / MVI A,32H / LDA 2050H
   D. RET / LXI H,1234H / ADI 05H
   Answer: C. MOV A,B has only an opcode (1 byte), MVI A,32H adds an 8-bit data byte (2 bytes), and LDA 2050H adds a 16-bit address (3 bytes). (Key point: Instruction size: data/port byte makes 2 bytes, 16-bit address/data makes 3 bytes)

3. How does a branching instruction change the flow of a program?
   A. It changes the content of the program counter so the next instruction is fetched from a new address
   B. It changes the stack pointer so data is read from a different stack
   C. It copies data from one register to another without changing the source
   D. It sets the flags so the ALU skips the next instruction
   Answer: A. Jump, call, return and restart load a new value into PC, so execution continues from a different address instead of the next one in sequence. (Key point: Branching instructions change the program counter)

4. What happens when JZ 3000H is executed and the Zero flag is 0?
   A. The program jumps to 3000H
   B. The processor halts
   C. The Zero flag is set and then the jump is taken
   D. The jump is not taken and the next sequential instruction is executed
   Answer: D. A conditional jump acts only when its flag condition is true; with Z = 0, JZ does not branch and execution continues in sequence. (Key point: Conditional branches act only if the flag condition is true)

## Related in Microprocessor

- [RST instructions in 8085](https://www.bctengineer.com/question.md?key=semester_4%2Fmicroprocessor%3Arst-instructions) — Microprocessor, chapter 2
- [8085 flags and their effect](https://www.bctengineer.com/question.md?key=semester_4%2Fmicroprocessor%3A8085-flags-effect) — Microprocessor, chapter 2, asked 3×

## Related in other subjects

- [Purpose of soil classification](https://www.bctengineer.com/question.md?key=semester_4%2Fsoil_mechanics%3Apurpose-of-soil-classification) — Soil Mechanics, chapter 3, asked 3×
- [Ways to achieve distributed mutex](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Amutex-methods) — Distributed System, chapter 6
- [Classification of circuit breakers](https://www.bctengineer.com/question.md?key=semester_6%2Fswitchgear_and_protection%3Acb-classification) — Switchgear and Protection, chapter 6
- [Thermal comfort and its classification](https://www.bctengineer.com/question.md?key=semester_6%2Fbuilding_technology%3Athermal-comfort-classification) — Building Technology, chapter 1
