8085 Microprocessor (8-bit)
1. Introduction
The 8085 microprocessor is an 8-bit microprocessor developed by Intel in 1976. It is widely used
in early computers, embedded systems, and educational purposes due to its simplicity and
effectiveness.
The term 8-bit means it can process 8 bits of data at a time. It has a 40-pin dual in-line package
(DIP) and can address 64 KB of memory using a 16-bit address bus.
It operates on a +5V power supply and is designed using NMOS technology.
2. Architecture Overview
The architecture of the 8085 microprocessor consists of the following major components:
1. Registers
2. Arithmetic and Logic Unit (ALU)
3. Accumulator
4. Data and Address Buffers
5. Flags
6. Address Buffer & Address Bus
7. Instruction Decoder and Control Unit
3. Registers
Registers are small, high-speed memory units inside the CPU used to store data temporarily
during processing.
The 8085 has the following registers:
General Purpose Registers: B, C, D, E, H, L (8-bit each, can be combined into BC, DE,
HL pairs for 16-bit operations)
Accumulator (A): Special register used by the ALU (explained later)
Program Counter (PC): 16-bit register that holds the address of the next instruction to be
executed
Stack Pointer (SP): 16-bit register pointing to the top of the stack in memory
Temporary Registers: Used internally by the processor, not accessible to the programmer
4. Arithmetic and Logic Unit (ALU)
The ALU performs all arithmetic operations (addition, subtraction, increment, decrement) and
logical operations (AND, OR, XOR, compare, complement).
It takes one input from the accumulator and the other from a register or memory location.
After execution, the result is stored in the accumulator.
The ALU also updates flag bits to indicate the result's status.
5. Accumulator
The accumulator is an 8-bit special-purpose register that:
Stores one of the operands for ALU operations
Holds the result of any arithmetic or logical operation
Acts as a central register for data transfer between CPU and I/O or memory
Example: If you add two numbers, the final sum is stored in the accumulator.
6. Data and Address Buffers
The microprocessor needs to send and receive data to/from memory and I/O devices. For this:
Data Buffer: Temporarily holds data being transferred between CPU and memory or I/O.
Address Buffer: Temporarily holds memory or I/O addresses during data transfer.
These buffers isolate the CPU from external hardware and help manage bus control.
7. Flags
The flag register is a set of 5 status bits that reflect the result of the last ALU operation:
1. Sign Flag (S) – Set if the result is negative
2. Zero Flag (Z) – Set if the result is zero
3. Auxiliary Carry Flag (AC) – Used for BCD (Binary Coded Decimal) operations
4. Parity Flag (P) – Set if the result has even number of 1s
5. Carry Flag (CY) – Set if there is a carry or borrow from the most significant bit
8. Address Buffer & Address Bus
Address Buffer holds the address temporarily before placing it on the address bus.
The address bus in the 8085 is 16 bits wide, allowing access to 2¹⁶ = 65,536 memory
locations (64 KB).
Lower 8 bits of the address are multiplexed with the data bus to save pins.
9. Instruction Decoder and Control Unit
The instruction decoder interprets binary machine instructions fetched from memory.
The control unit generates necessary control signals for execution (like Read, Write,
IO/M, RD, WR).
Together, they ensure the correct sequence of operations.
10. Working Principle (Simplified)
1. Fetch: Program Counter sends address to memory → instruction fetched.
2. Decode: Instruction decoder interprets it.
3. Execute: ALU performs operation, result stored in accumulator.
4. Update: Flags and Program Counter are updated.
11. Applications
Simple embedded control systems
Educational tools for learning microprocessor basics
Signal processing in early electronics
Industrial automation systems (legacy)
12. Conclusion
The 8085 microprocessor is a classic and foundational CPU in computer engineering history. Its
8-bit architecture, simple instruction set, and easy interfacing make it a perfect choice for
learning microprocessor concepts. Even though it has been replaced by modern processors, its
architecture is still relevant for understanding how CPUs work at the hardware level.