Sunteți pe pagina 1din 16

Types Of Registers

Types Of Registers
There are five types of registers which are used in
microprocessor 8088 & 8086.
1. Data registers
2. Segment registers
3. Index registers
4. Pointer registers
5. Flag

Data Registers
Data registers are further divided into four categories
and each category is of 16-bits which can be divided
into further two parts and each part is of 8-bits. One
part can be said high which contain higher byte and
second part can be said lower which contain lower
byte. The data registers category is following:
1. AX >> Accumulator
2. BX>> Base Register
3. CX>> Count register
4. DX>> Data register
AX-Register
This register is known as accumulator.
The accumulator is used for instructions such as
multiplication, division, and some other adjustment
instruction.
It is considered to be a multipurpose register.
It is divided into further two parts AH and AL.

BX-Register
This register in known as base register.
This register hold the offset address of a location in the
memory system in all versions of microprocessor.
It can be divided into further two parts BH and BL.

CX-Register
This register is known as count register.
The loop programs are facilitated by the use of this
register.
It serves as a loop counter.
It can be further divided into two parts CH and CL.
DX-Register
This register is known as Data register.
It is used for general purpose register which hold a part
of the result from multiplication and division.
This register can also be address memory data.
This register is further divided into two parts DH and
DL.
Segment Register
The segment register is used to store address.
An address is generated by the processor, it is added to
the value of one of the segment registers, after that
segment register is effectively multiplied by 16, or left
shifted four bits, in order to generate the physical
address that accesses memory. This gives an effective
address range of 20-bits, or 1-mb, but only 64-kb is
addressable through any segment register at one time,
unless we stop to change the contents of that segment
register.

Segment Register
The segment register is divided into four categories:
1. SS>>Stack segment
2. ES>>Extra segment
3. CS>>Code segment
4. DS>>Data segment
Segment Register
Stack register>> It is used for access to stack data.
Extra register>> It is used for access to data during
certain string primitive operations.
Code register>> It is used for access to program code.
Data register>> It is used for access to data.
Index Register
They point to memory locations.
They usually have offset address of a memory location.
They are used in arithmetic and other operations.
The index register is further divided into two
categories.
1. SI>>Source index
2. DI>>Destination index
SI-Register
This register is known as source index.
This register is used to point to memory locations in
the data segment addressed by DS. By incrementing
the contents of SI, we can easily access consecutive
memory locations.
DI-Register
This register is known as destination register.
Its function is same as SI.
There is a class of operation called string operation,
that use DI to access memory locations addressed by
ES.
Pointer Register
Pointer registers are those register which used for
pointing to locations of memory and for stack.
They are further divided into two categories:
1. BP>>Base pointer
2. SP>>Stack pointer
Pointer Registers
Stack pointer>> It is used in conjunction with SS for
accessing the stack segment.
Base pointer>> It is used primarily to access data on
the stack. We can also use BP to access data in other
segments.
FLAGS Register
The purpose of FLAGS register is to indicate the status
of the microprocessor. It does this by setting of
individual bits called flags.
They are further divided into two parts:
1. Status flags
2. Control flags

S-ar putea să vă placă și