Accumulator is an eight bit Register.It holds one of the data to be processed by Arithmetic
logic unit or ALU.It also stores the result of the operation.The Accumulator is also called
as A register.The Accumulator is connected to the eight bit internal data bus the bidirectional
arrow between the accumulator and the bus indicates that it allows the accumulator to
send or receive data.The two state output of the accumulator drives the ALU.
Temp.Register: The temporary register receives one of the
data to be processed by ALU from external memory or general purpose registers.The other
input for the ALU comes from the temporary register.This eight bit register stores the
operands of Arithematic logic operations.
General Purpose Registers: In Intel 8085 microprocessor there are six
8 bit general purpose registers.
They are B, C, D, E, H and L. They may be used individually or combined as register
pairs to perform some 16 bit operations.
The permitted combinations of register pairs are BC, DE and HL.
The HL register pair which is normally used to perform a 16 bit memory pointer.
Stack pointer or SP: Stack pointer is a 16 bit register used as
a memory pointer.
It maintains the address of the last byte enter into the stack.
Stack is the portion of RAM.
The Stack pointer is decremented each time when data is loaded into the stack and is
incremented when data is retrieved from the Stack.
Program Counter or PC: This 16 bit register deals with sequencing
the execution of instructions.
This register is also a memory pointer.
The microprocessor uses this register to sequence the execution of the instructions.
The function of the program counter is to point the address of the next instruction
to be executed.
At the end of the execution of an instruction the program counter is incremented by 1 pointing
to the next memory location where the next instruction is available.
Incrementer/Decrementer: It can add 1 or subtract 1 from the contents
of the stack pointer or program counter.
Arithmetic and Logic Unit (ALU): The ALU carries out the arithmetic and logic
operation on 8 bit words.
As shown the contents of the accumulator and the temporary register are the inputs to the
ALU.It can peform arithmetic operations such as addition, subtraction and logical operations
such as AND,OR and XOR.
The ALU result is then stored back in the Accumulator.
FLAGS: Flag register is a group of five individual
The content of the flag register will change 0 or 1 after the execution of arithmetic and
Instruction Register and Decoder: Instruction Register and Decoder is an 8 bit
When an instruction is fetched from memory it is loaded in the Instruction Register.
The instruction decoder decodes the contents of the Instruction register.
It also determines the operation to be followed in executing the entire instruction and directs
the timing and control unit accordingly.
Timing and Control unit: The Timing and control section of microprocessor
includes an oscillator and controller sequencer.
The oscillator generates the two phase clock signals, CLK and CLK' that synchronize all
registers .The controller sequencer also produces the control signals needed for internal and
The controller sequencer is microprogrammed.
It has a ROM that stores all the micro routines needed for executing the instructions.
Interrupt Control: Sometimes it is necessary to interrupt the
execution of the main program to answer a request from an IO device.
For instance an IO device may send an interrupt signal to the Interrupt control unit to indicate
the data is ready for input.
The computer temporarily stops the execution of main program inputs the data and then returns
to the main program.
SERIAL I/O CONTROL: Sometimes I/O devices works with serial data
rather than parallel.
The Serial input data enters 8085 through pin 5 SID Serial input Data and leaves through
pin 4 SOD serial output data.
Two new instructions known as SIM and RIM allows us to perform a serial parallel conversion
needed for seral IO device.
Address Buffer and Address Data Buffer: The contents of stack pointer or program counter
can be loaded into the address buffer an address data buffer.The output of these buffers then
drives the external address bus an address data Bus.
Memory and IO chips are connected to these buses.In this way the CPU can send a address
of desired data to the memory or IO chips.