Intel 8085 microprocessor is an 8-bit microprocessor having a 40 pin IC package working on a +5V dc supply. It has 80 basic instructions and 240 opcodes. Its clock speed is about 3MHz.
8085 microprocessors having three main sections:
- ALU (Arithmetic & Logic Unit)
- Timing and Control Unit
- Several Registers
It performs the following arithmetic and logical operations.
- Logical Not ( Complement)
- Left Shift (add input to itself)
2. Timing and Control Unit
This is the part of CPU which is used to control the flow of data between CPU and memory. It generate timing and control signals which are necessary for the execution of instructions and operations of memory and I/O devices.
It is used to control the entire operations of the microprocessors and peripherals(external devices) attached to it. Thus the CPU is also known as the brain of the computer system.
Registers in 8085 microprocessor are used for the temporary storage. It manipulate the data and instructions in the microprocessors.
Intel 8085 microprocessor has the following registers:
- General Purpose Registers
- Temporary Registers
- Special Purpose Registers
- Program Counter
- Stack Pointer
- Increment/Decrement Latch
- Instruction Register
a.) Accumulator (Acc)
It is an 8-bit register associated with the ALU. The register ‘A’ in the diagram is known as the accumulator. It holds one of the operands of the instruction.
The final result of the operation also stored in the accumulator itself.
b.) General Purpose Registers
B, C, D, E, H and L are the six 8-bit general purpose registers. They can be combined to form register pairs – BC, DE, and HL to store 16-bit data.
These registers can store/copy any data and are used to perform various instructions and operations. These are also known as scratched registers. The HL pair is used to address memory location.
c.) Temporary registers:
These registers are not available for user. W and Z are temporary registers. These are used by the microprocessor for internal operations to store operand, immediate operand or address of memory.
d.) Special Purpose Registers:
( i.) Program Counter: (PC)
PC is a special purpose register that stores the next instruction address to be fetched simultaneously with the execution of previous instruction. PC acts as a pointer to the next instruction. How processor increments PC depends upon the nature of instructions, for one-byte instruction it increments the PC by one. For two bytes instruction, it increments PC by two and so on.
( ii.) Stack Pointer: (SP)
This register points to the top of the stack. The stack pointer will be decremented when data or address is stored on the top of the stack. The stack pointer will be incremented when data or address is retrieved from the stack memory.
( iii.) Increment/Decrement Latch:
This is also a 16-bit register used to increment or decrement the contents of stack pointer and program counter registers. Address buses and address/data buses are use din co-ordination with these registers.
e.) Instruction Register
When an instruction is fetched from memory, it is loaded in instruction register and that instruction is provided to decoder for decoding. This register is only activated when an instruction code or opcode is available on internal data bus. It is a non-programmable register.
8085 microprocessor contains five flip-flops as flags. These can be SET and RESET according to the conditions which arise during an operation. If a flip-flop for a particular flag is SET, then it indicates 1 and for RESET it indicates 0.
These five flags are:
- Carry Flags (CS)
- Parity Flags (P)
- Auxillary Flags (AC)
- Zero Flag (Z)
- Sign Flag (S)