8085 Microprocessor Architecture

The 8085 microprocessor is an 8 bit general purpose microprocessor. 8 bit processor means, it can read, write and process 8 bit data at a time. Although the internal architecture of 8085 microprocessor is very complicated, the programmer is concern only with a small part of it, which can be referred in the program or which is important to know to write a program. So in this article we will learn about the programming model and bus organization of 8085 microprocessor.

8085 Microprocessor Architecture

Registers

Programming Model - 8085 Microprocessor Architecture

1. Accumulator (A)
It is an 8 bit register which stores the results of arithmetical and logical operations. It is also used to receive data from input port to microprocessor and to send data to output port from microprocessor. It is referred as register A in the program.

2. General Purpose Registers
Registers B, C, D, E, H and L are 8 bit general purpose registers. These registers store 8 bit data temporarily for processing. BC, DE and HL are used as register pairs to store 16 bit data.

3. Flag Register (F)
Flag register is also an 8 bit register which indicate status of the accumulator after any arithmetical or logical operation. Out of 8 bits, five are defined as flags. These flags are given below.

Flag Register - 8085 Microprocessor Architecture

Sign Flag (S) – It indicates the sign of the number. If the number is negative then sign flag is set (changed to 1) and if positive then reset (changed to 0).

Zero Flag (Z) – If after any arithmetical or logical operation, all the bits in accumulator are zero then zero flag is set otherwise reset.

Auxiliary Carry Flag (AC) – If carry is generated from D3 to D4 in the accumulator after any operation then auxiliary carry flag is set otherwise reset. This flag is used internally by microprocessor for BCD operations and cannot be used by the programmer.

Parity Flag (P) – If after any arithmetical or logical operation number of 1’s in accumulator are even, then parity flag is set, otherwise reset.

Carry Flag (CY) – The size of accumulator is 8 bit. If after any operation 9th bit is generated then carry flag is set, otherwise reset. 

4. Program Counter (PC)
Program counter is a 16 bit register which is also known as memory pointer. It stores the address of the next byte of the program to be executed. The microprocessor takes the address from program counter and executes instruction at that address. Each time the address in program counter is incremented by one.

5. Stack Pointer (SP)
It is a 16 bit register which contains the memory address of top of the stack. Stack is a part of memory which is used to store data temporarily, especially while the execution of subroutines or functions.

Bus Organization

Bus Organization - 8085 Microprocessor Architecture
Image Source
1. Address Bus
The address bus is the group of 16 lines. It is used to carry the address of memory location and address of input and output ports. It is a unidirectional bus, that means the bits can flow only in one direction i.e., microprocessor to the peripherals. The address lines are identified by A15-A0.

2. Data Bus
The data bus is the group of 8 lines which is used to carry data. These lines are bidirectional. These data lines are identified by D7-D0.

3. Control Bus
The control bus comprises of various single lines that carry various control signals for synchronizing various devices and performing different task. The microprocessor generates specific control signals for different operations.

This was all about 8085 microprocessor architecture. If you find anything missing or any mistake in above article then please mention it by commenting below.

Leave a Reply

Your email address will not be published. Required fields are marked *