4. The 8085 and Its Buses
• The 8085 is an 8-bit general purpose microprocessor that can
address 64K Byte of memory.
• It has 40 pins and uses +5V for power. It can run at a maximum
frequency of 3 MHz.
• The pins on the chip can be grouped into 6 groups:
• Address Bus.
• Data Bus.
• Control and Status Signals.
• Power supply and frequency.
• Externally Initiated Signals.
• Serial I/O ports.
5. The Address and Data Bus
Systems
• A8-A15(output): The address bus has 8 signal lines A8 – A15
which are unidirectional.These are address bit 8-bits used for
the most significant bits of memory address.
• AD0-AD7(input/output): these are the address/data bus.i.e.
they can be used for both address as well as 8-bit data. So, the
bits AD0 – AD7 are bi-directional and serve as A0 – A7 and D0 –
D7 at the same time.During the execution of the instruction,
these lines carry the address bits during the early part, then
during the late parts of the execution, they carry the 8 data bits.
6. The Control and Status Signals
• There are 4 main control and status signals. These are:
• ALE(output): Address Latch Enable. This signal is a pulse that
become 1 when the AD0 – AD7 lines have an address on them.
It becomes 0 after that. This signal can be used to enable a
latch to save the address bits from the AD lines.
• IO/M(output): This signal specifies whether the operation is a
memory operation (IO/M=0) or an I/O operation (IO/M=1).
• S1 and S0(output) :These are the Status signals to specify the
kind of operation being performed. Usually not used in small
systems.
S1 S0 output
0 0 halt
0 1 write
1 0 read
1 1 fetch
7. RD: Read(output).When this signal low the
selected memory or I/O devices is read.( Active
low)
WR: Write(output): When it goes low the data
on the data bus is written into the selected
memory or I/O location
8. • READY (Input): It is used by the microprocessor to see
whether a peripheral (I/O Device) is ready to transfer
data or not. If the signal is high the peripheral is
ready. If it is low the microprocessor waits till its goes
high.
• HOLD(Input):This signal is used during DMA(Direct
memory Access) Operation. This Signal indicates that
another device is requesting the use of address and
data bus.So this device gives hold signal to the
microprocessor .
9. • HLDA(Output):It is signal for HOLD
acknowledgement. It indicates that the HOLD request
has been received.
• INTR(Input):It is an interrupt request signal. An
interrupt is used by I/O devices to transfer data to
microprocessor.
• INTA(Output): It is an interrupt acknowledgement
sent by the microprocessor after INTR is received.
10. • RST 5.5,6.5,7.5 and TRAP(Inputs).These are
Interrupts.
• RESET IN(Output): It resets the program counter to
zero.
• RESET OUT(Output): It indicates that CPU is being
reset.
• X1,X2(Input):These are terminals to an external
crystal oscillator to produce clock signal for the
operation of microprocessor
11. • CLK(Output):It is a clock output, which can be
used for other digital ICs.(Integrated Circuits)
• SID(Input): It is a data line for serial
transmission of data to microprocessor.
• SOD(Output): It is a data line for serial
transmission of data From the
microprocessor.
• Vcc+5V Supply(d.c.)
• Vss Ground
12. General Purpose Registers
• 8085 consists of 6 special types of registers
called General Purpose Registers. These
General Purpose Registers are used to hold
data like any other registers .
• The GPR in 8085 processors are
B,C,D,E,H,L.Each registers can hold 8-bit data.
They can work in pair such as B-C,D-E,H-L to
store 16-bit data.
13. Temporary Register
This register acts as a temporary memory
during the arithmetic and logical operations.
Unlike other registers, this temporary
registers can only be accessed by the
microprocessor and it is completely
inaccessible to programmers. Temporary
register is an 8-bit register.
14. PSW
• The combination of these 8-bits is called
Program Status Word(PSW).PSW and the
accumulator as a 16-bit unit for the stack
operation.
17. ALU
The ALU performs the arithmetic and logical
operations. The operations performed by ALU
of 8085 are addition, subtraction, increment,
decrement, logical AND, OR, EXCLUSIVE -OR,
compare, complement and left / right shift .
18. Accumulator and
temporary register
• The accumulator and temporary register are
used to hold the data during an arithmetic /
logical operation. After an operation the
result is stored in the accumulator and the
flags are set or reset according to the result of
the operation.
19. TIMING & CONTROL UNIT
The timing and control unit synchronizes all the
microprocessor operations with the clock and
generates the control signals necessary for
communication between the microprocessor
and peripherals.
20. INSTRUCTION REGISTER &
DECODER
• When an instruction is fetched from memory it
is placed in instruction register. Then it is
decoded and encoded into various machine
cycles.
21. STACK POINTER (SP)
• It is also a 16-bit register which is used as a memory
pointer.
• It maintains the address of the last byte that is
entered into stack.
22. PROGRAM COUNTER (PC)
• The program counter (PC) keeps track of
program execution.
• It is a special purpose register.
• A program counter stores the address of the
next instruction to be executed.
23. FLAG REGISTER
There are five flags in 8085, which are sign flag
(8), zero flag (Z), auxiliary carry flag (AC), parity
flag (P) and carry flag (CY). The bit positions
reserved for these flags in the flag register are
shown in figure below.
24. The Flags register
• There is also a flag register whose bits are affected by
the arithmetic & logic operations.
• S-sign flag
• The sign flag is set if bit D7 of the
accumulator is set after an arithmetic or logic
operation.
• Z-zero flag
• Set if the result of the ALU operation is 0.
Otherwise is reset. This flag is affected by
operations on the accumulator as well as other
registers. (DCR B).
• AC-Auxiliary Carry
• This flag is set when a carry is generated from
bit D3 and passed to D4 . This flag is used
only internally for BCD operations.
25. • P-Parity flag
• After an ALU operation, if the result has an even #
of 1s, the p-flag is set. Otherwise it is cleared. So,
the flag can be used to indicate even parity.
• CY-carry flag
• This flag is set when a carry is generated from bit
D7 after an unsigned operation.
• OV-Overflow flag
• This flag is set when an overflow occurs after a
signed operation.
Unspecified
7 6 5 4 3 2 1 0
SF ZF X AF X PF X CF
26. General Purpose
Registers• 8085 consists of 6 special types of registers called
General Purpose Registers. These General Purpose
Registers are used to hold data like any other
registers .
• The GPR in 8085 processors are B,C,D,E,H,L.Each
registers can hold 8-bit data.
• They can work in pair such as B-C,D-E,H-L to store
16-bit data.
27. Temporary Register
This register acts as a temporary memory during
the arithmetic and logical operations.
Unlike other registers, this temporary registers
can only be accessed by the microprocessor and
it is completely inaccessible to programmers.
Temporary register is an 8-bit register.
28. PSW
• The combination of these 8-bits is called
Program Status Word(PSW).PSW and the
accumulator as a 16-bit unit for the stack
operation.