- Registers are temporary storage locations inside the CPU.
- A register is a very very fast memory that is built into the CPU.
- Registers are used to store data temporarily..
- Different processors have different register.
- Registers are normally measured by the number of bits they can hold, for example, an 8-bit register means it can store 8 bits of data or a 32-bit register means it can store 32 bit of data.
The basic computer has 8 registers.
|Register Symbol||Register Name||Description|
|DC||Data Register||Store Memory Data|
|TR||Temoprary Register||Store Temporary Data|
|IR||Instruction Register||Store Instruction Code|
|AR||Address Register||Store Memory Address|
|PC||Program Counter||Store Address of Next Instruction|
|INPR||Input Register||Store Input Data|
|OUTR||Output Register||Store Output Data|
The registers in the processor can be put in two categories:
- User-visible registers
- Control and status registers
1. User-Visible Registers:
Enables the machine to minimize main memory references by optimizing use of registers.
User-visible registers includes,
1. General purpose registers:
General-purpose register can contain the operand for any opcode. General-purpose registers can be used for addressing functions (e.g., register indirect, displacement).
2. Data registers:
Data registers may be used only to hold data and cannot be employed in the calculation of an operand address.
3. Address registers:
Address registers may themselves be somewhat general purpose, or they may be devoted to a particular addressing mode.
Examples include the following:
- Segment pointers: Segment register holds the address of the base of the segment.
- Index registers: These are used for indexed addressing and may be autoindexed.
- Stack pointer: This allows implicit addressing; that is, push, pop, and other stack instructions need not contain an explicit stack operand.
2. Control and Status Registers:
Used by the control unit to control the operation of the processor.
1. Program counter (PC):
Contains the address of an instruction to be fetched.
2. Instruction rester (IR):
Contains the instruction most recently fetched.
3. Memory address register (MAR):
Contains the address of a location in memory.
4. Memory buffer register (MBR):
Contains a word of data to be written to memory or the word most recently read.