To work with microprocessor 8085, first we have to know the internal architecture of 8085 microprocessor. Internal architecture of 8085 microprocessor tells us the relation between different working blocks of 8085 microprocessor. Generally microprocessor consists of different working units those are
- Control unit: It control complete operations of microprocessor.
- ALU: It performs data processing function in respect of arithmetic and logical manner.
- Registers: It provide internal storage to CPU.
- Interrupts: It maintain priority of process.
- Internal data bus: It use to transfer data to appropriate place.
In my early post, I discussed on pin configuration of 8085 microprocessor you may also check that to enter the discussion of Internal architecture of 8085 microprocessor. In bellow I shown the block diagram of internal architecture of 8085 microprocessor.
Now come to brief discussion on all individual units of internal architecture of 8085 microprocessor.
The ALU stands for arithmetic and logical unit. As name suggest all the arithmetic and logical operation of microprocessor done inside this unit. In addition to the arithmetic & logic circuits, the ALU includes the accumulator, which is part of every arithmetic & logic operation. Also, the ALU includes a temporary register used for holding data temporarily during the execution of the operation. This temporary register is not accessible by the programmer.
Register is a very vital unit in internal architecture of 8085 microprocessor. These registers are used in different purpose. Mainly registers are three types
- General Purpose Registers
- Special Purpose Registers.
- Temporary Registers.
General Purpose Registers are by name B, C, D, E, H& L. All are 8 bit registers. It can be used singly Or can be used as 16 bit register pairs like BC, DE, HL. H & L can be used as a data pointer which holds memory address but it cannot make pair like BE, DC. So it should be in pair like BC, DE, HL.
Special Purpose Registers:
In 8085 microprocessor there have lots of special purpose register which have specific task. In bellow you find those special purpose register.
Accumulator (8 bit register):
Accumulator is very important register in 8085 microprocessor. It store 8 bit data in size. All arithmetic and logical operation done inside the accumulator and after execution store the result of an operation. It also used to store 8 bit data during I/O transfer.
Flag is a brain of a microprocessor. It is an 8 bit register. It shows the status of the microprocessor before and after an operation. In 8085 microprocessor have five flags those are S (sign flag), Z (zero flag), AC (auxiliary carry flag), P (parity flag) & CY (carry flag).
Program Counter (PC):
Program counter is also a special purpose register. This is a register that is used to control the sequencing of the execution of instructions. This register always holds the address of the next instruction. Since it holds an address so it must be a 16 bits register.
As name suggested stack pointer used as an address pointer. The stack pointer is also a 16-bit register that is used to point into memory. The memory this register points to be a special area called the stack. The stack is an area of memory used to hold data that will be retrieved soon. The stack is usually accessed in a Last In First Out (LIFO) fashion.