0% found this document useful (0 votes)
39 views

Samir Pre

The document discusses the various registers in the 8085 microprocessor. It describes the accumulator, general purpose registers B, C, D, E, H and L, program counter, stack pointer, temporary register, and flags. The accumulator stores data and results. The general purpose registers hold data and can store 16-bit data in pairs. The program counter tracks the next instruction to execute. The stack pointer manages the stack memory. The temporary register assists arithmetic/logical operations. Flags indicate status like carry, parity, zero, and sign. The instruction register holds fetched instructions for decoding.

Uploaded by

Dhara Patel
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

Samir Pre

The document discusses the various registers in the 8085 microprocessor. It describes the accumulator, general purpose registers B, C, D, E, H and L, program counter, stack pointer, temporary register, and flags. The accumulator stores data and results. The general purpose registers hold data and can store 16-bit data in pairs. The program counter tracks the next instruction to execute. The stack pointer manages the stack memory. The temporary register assists arithmetic/logical operations. Flags indicate status like carry, parity, zero, and sign. The instruction register holds fetched instructions for decoding.

Uploaded by

Dhara Patel
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

Sheikh Samir B.

Types of Registers
It has a set of registers for performing various

operations. The various registers include Accumulator (register A) Registers: B, C, D, E, H and L Stack pointer Program Counter Temporary register (W,Z) Instruction register

Accumulator
Accumulator is nothing but a register which can hold

8-bit data. Accumulator aids in storing two quantities. The data to be processed by arithmetic and logic unit is stored in accumulator. It also stores the result of the operation carried out by the Arithmetic and Logic unit. The accumulator is also called an 8-bit register. The accumulator is connected to Internal Data bus and ALU (arithmetic and logic unit).The accumulator can be used to send or receive data from the Internal Data bus.

General Purpose Registers


Apart from accumulator 8085 consists of six

special types of registers called General Purpose Registers. What do these general purpose registers do? These general purpose registers are used to hold data like any other registers. The general purpose registers in 8085 processors are B, C,D, E, H and L. Each register can hold 8-bit data. Apart from the above function these registers can also be used to work in pairs to hold 16-bitdata.

They can work in pairs such as B-C, D-E and H-L to

store 16-bit data. The H-L pair works as a memory pointer. A memory pointer holds the address of a particular memory location. They can store 16-bit address as they work in pair.

Program counter
Program counter is a special purpose register. Consider that an instruction is being

executed by processor. As soon as the ALU finished executing the instruction, the processor looks for the next instruction to be executed. So, there is a necessity for holding the address of the next instruction to be executed in order to save time. This is taken care by the program counter.

Program counter
A program counter stores the address of the next

instruction to be executed. In other words the program counter keeps track of the memory address of the instructions that are being executed by the microprocessor and the memory address of the next instruction that is going to be executed. Microprocessor increments the program whenever an instruction is being executed, so that the program counter points to the memory address of the next instruction that is going to be executed. Program counter is a 16-bitregister.

Stack pointer
Stack pointer is also a 16-bit register which is used as a

memory pointer. A stack is nothing but the portion of RAM (Random access memory). So does that mean the stack pointer points to portion of RAM? Yes. Stack pointer maintains the address of the last byte that is entered into stack. Each time when the data is loaded into stack, Stack pointer gets decremented. Conversely it is incremented when data is retrieved from stack.

Temporary Register:
As the name suggests this register acts as a temporary

memory during the arithmetic and logical operations. Unlike other registers, this temporary register can only be accessed by the microprocessor and it is completely inaccessible to programmers. Temporary register is an 8-bit register.

Flags In8085
Flags are nothing but a group of individual Flip-flops.

The flags are mainly associated with arithmetic and logic operations. The flags will show either a logical (0 or 1)(i.e.) a set or reset depending on the data conditions in accumulator or various other registers. A flag is actually a latch which can hold some bits of information. It alerts the processor that some event has taken place.

But why are they called flags?


The possible solution is from the small flags which are

found on the mail boxes in America. The small flag indicates that there is a mail in the mail box. Similarly this denotes that an event has occurred in the processor. Intel processors have a set of 5 flags. Carry flag Parity flag Auxiliary carry flag Zero flag Sign flag

Example
Consider two binary numbers. For example:

1100 0000 1000 0000 When we add the above two numbers, a carry is generated in the most significant bit. The number in the extreme right is least significant bit, while the number in extreme left is most significant bit. So a ninth bit is generated due to the carry. So how to accommodate 9th bit in an 8 bit register?
For this purpose the Carry flag is used. The carry flag is set

whenever a carry is generated and reset whenever there is no carry.

Parity checks whether its even or add parity. This flag

returns a 0 if it is odd parity and returns a 1 if it is an even parity. Sometimes they are also called as parity bit which is used to check errors while data transmission is carried out. Zero flag shows whether the output of the operation is 0 or not. If the value of Zero flag is 0then the result of operation is not zero. If it is zero the flag returns value 1. Sign flag shows whether the output of operation has positive sign or negative sign. A value 0 is returned for positive sign and 1 is returned for negative sign.

Instruction Register and Decoder


Instruction register is 8-bit register just like every

other register of microprocessor. Consider an instruction. The instruction may be anything like adding two data's, moving a data, copying a data etc. When such an instruction is fetched from memory, it is directed to Instruction register. So the instruction registers are specifically to store the instructions that are fetched from memory. There is an Instruction decoder which decodes the informations present in the Instruction register for further processing.

You might also like