Types of Register in Computer Organization
In Computer Organisation, the register is utilized to acknowledge, store, move information and directions that are being utilized quickly by the CPU. There are different kinds of registers utilized for different reasons. Some of the commonly used registers are:
- AC ( accumulator )
- DR ( Data registers )
- AR ( Address registers )
- PC ( Program counter )
- MDR ( Memory data registers )
- IR ( index registers )
- MBR ( Memory buffer registers )
These registers are utilized for playing out the different operations. When we perform some operations, the CPU utilizes these registers to perform the operations. When we provide input to the system for a certain operation, the provided information or the input gets stored in the registers. Once the ALU arithmetic and logical unit process the output, the processed data is again provided to us by the registers.
The sole reason for having a register is the quick recovery of information that the CPU will later process. The CPU can use RAM over the hard disk to retrieve the memory, which is comparatively a much faster option, but the speed retrieved from RAM is still not enough. Therefore, we have catch memory, which is faster than registers. These registers work with CPU memory like catch and RAM to complete the task quickly.
Operation Performed by Registers
Following major operations performed by registers, such as:
- Fetch: The fetch operation is utilized for taking the directions by the client. The instructions that are stored away into the main memory for later processing are fetched by registers.
- Decode: This operation is utilized for deciphering the instructions implies the instructions are decoded the CPU will discover which operation is to be performed on the instructions.
- Execute: The CPU performs this operation. Also, results delivered by the CPU are then stored in the memory, and after that, they are shown on the client Screen.
Types of Register in Computer Organization
Here are the following types of registers in computer organization, such as:
||An accumulator is the most often utilized register, and it is used to store information taken from memory.
||Memory address registers
||Address location of memory is stored in this register to be accessed later. It is called by both MAR and MDR together
||Memory data registers
||All the information that is supposed to be written or the information that is supposed to be read from a certain memory address is stored here
Consist of a series of registers generally starting from R0 and running till Rn - 1. These registers tend to store any form of temporary data that is sent to a register during any undertaking process.
More GPR enables the register to register addressing, which increases processing speed.
These registers are utilized in keeping the record of a program that is being executed or under execution. These registers consist of the memory address of the next instruction to be fetched.
PC points to the address of the next instruction to be fetched from the main memory when the previous instruction has been completed successfully. Program Counter (PC) also functions to count the number of instructions.
The incrementation of PC depends on the type of architecture being used. If we use a 32-bit architecture, the PC gets incremented by 4 every time to fetch the next instruction.
Instruction registers hold the information about to be executed. The immediate instructions received from the system are fetched and stored in these registers.
Once the instructions are stored in registers, the processor starts executing the set instructions, and the PC will point to the next instructions to be executed
||Condition code registers
||These have different flags that depict the status of operations. These registers set the flags accordingly if the result of operation caused zero or negative
||Holds temporary data
||Carries input character
||Carries output character
We use this register to store values and numbers included in the address information and transform them into effective addresses. These are also called base registers.
These are used to change operand address at the time of execution, also stated as BX
||Memory buffer register
MBR - Memory buffer registers are used to store data content or memory commands used to write on the disk. The basic functionality of these is to save called data from memory.
MBR is very similar to MDR
||Stack control registers
Stack is a set of location memory where data is stored and retrieved in a certain order. Also called last in first out ( LIFO ), we can only retrieve a stack at the second position only after retrieving out the first one, and stack control registers are mainly used to manage the stacks in the computer.
SP - BP is stack control registers. Also, we can use DI, SI, SP, and BP as 2 byte or 4-byte registers.
EDI, ESI, ESP, and EBP are 4 - byte registers
Flag registers are used to indicate a particular condition. The size of the registered flag is 1 - 2 bytes, and each registered flag is furthermore compounded into 8 bits. Each registered flag defines a condition or a flag.
The data that is stored is split into 8 separate bits.
Basic flag registers -
||Hold address for memory
||Hold memory operand