8085 Microprocessor - Notes
8085 Microprocessor - Notes
– Functional Units
8085 consists of the following functional units −
Accumulator
It is an 8-bit register used to perform arithmetic, logical, I/O & LOAD/STORE
operations. It is connected to internal data bus & ALU.
Arithmetic and logic unit
As the name suggests, it performs arithmetic and logical operations like Addition,
Subtraction, AND, OR, etc. on 8-bit data.
General purpose register
There are 6 general purpose registers in 8085 processor, i.e. B, C, D, E, H & L. Each
register can hold 8-bit data.
These registers can work in pair to hold 16-bit data and their pairing combination is
like B-C, D-E & H-L.
Program counter
It is a 16-bit register used to store the memory address location of the next
instruction to be executed. Microprocessor increments the program whenever an
instruction is being executed, so that the program counter points to the memory
address of the next instruction that is going to be executed.
Stack pointer
It is also a 16-bit register works like stack, which is always incremented/decremented
by 2 during push & pop operations.
Temporary register
It is an 8-bit register, which holds the temporary data of arithmetic and logical
operations.
Flag register
It is an 8-bit register having five 1-bit flip-flops, which holds either 0 or 1 depending
upon the result stored in the accumulator.
These are the set of 5 flip-flops −
● Sign (S)
● Zero (Z)
● Auxiliary Carry (AC)
● Parity (P)
● Carry (C)
Its bit position is shown in the following table −
D7 D6 D5 D4 D3 D2 D1 D0
S Z AC P CY
8085 Architecture
Address bus
A15-A8, it carries the most significant 8-bits of memory/IO address.
Data bus
AD7-AD0, it carries the least significant 8-bit address and data bus.
IO/M
This signal is used to differentiate between IO and Memory operations, i.e. when it is
high indicates IO operation and when it is low then it indicates memory operation.
S1 & S0
These signals are used to identify the type of current operation.
Power supply
There are 2 power supply signals − VCC & VSS. VCC indicates +5v power supply
and VSS indicates ground signal.
Clock signals
There are 3 clock signals, i.e. X1, X2, CLK OUT.
● X1, X2 − A crystal (RC, LC N/W) is connected at these two pins and is used to
set frequency of the internal clock generator. This frequency is internally
divided by 2.
● CLK OUT − This signal is used as the system clock for devices connected
with the microprocessor.
Step 1: Identify the peripheral or the memory location (with its address)
Step 2: transfer binary information (data and instructions)
Step 3: Provide timing or synchronization signals.
The 8085 MPU performs these functions using three set of communication lines called
buses: the address bus, data bus and control bus.
ADDRESS BUS The address bus is a group of 16 lines generally identified as A0 to A15. the
address bus is unidirectional: bits flow in one direction – from the MPU to peripheral
devices. The MPU uses the address bus to perform the first function: identifying a peripheral
or a memory location. In a computer system, each peripheral or memory location is
identified by a binary number called an address and the address bus is used to carry a 16-bit
address. This is similar to postal address of a house.
DATA BUS The data bus is a group of eight lines used for data flow. These lines are
bidirectional - data flow in both directions between the MPU and memory and peripheral
devices. The MPU uses the data bus to perform the second function: transferring binary
information. The eight data lines enable the MPU to manipulate 8- bit data ranging from 00
to FF.
CONTROL BUS The control bus is comprised of various signal lines that carry synchronization
signals. The MPU uses such lines to perform the third function: provide timing signals. The
control signals are not group of lines like address or data buses, but individual lines that
provide pulse to indicate an MPU operation. The MPU generates specific control signals for
every operation (such as memory read or I/O write) it performs. These signals are used to
identify a device type with which the MPU intends to communicate.