A computer register is a small set of data holding places in a computer processor that accepts storage and transfer of instructions that are being immediately executed by the C.P.U. Computer registers are temporary storage locations for input and output each of which is scheduled into the registers while the user awaits results. In fact, Registers are at the top of the computer memory hierarchy and consist of single memory locations
Registers are designed to store, process a storage address, an instruction, individual characters, or a bit sequence. There are instructions that specify a register as part of the instruction. A good example is the instructions register. A register must have sufficient space to hold a piece of data. For instance, a 64-bit computer processor must have a 64-bit length computers registers. Some computer designs come with registers for shorter instructions called half registers.
Additionally, the register is a simple microprocessor developed from multi-ported memory cells. Since a computer has a variety of register types, they are either arbitrarily named or numbered. The naming principle depends on language rules and processor design. A typical processor will contain multiple index registers called registers of modification. All entities of the computers comprise of an index, base and relative address all of which are recorded in the register of modification.
Functions performed by Computer Registers
In order to process data input from a user, registers in a computer must execute each of the following actions.
- Fetch – The fetch action is used to accept data input from the user as well as instructions stored in main memory.
- Decode – The decode functionality interprets instructions between the C.P.U and the
- Execute – The execute action is initiated by the computer register as a way to signal the C.P.U to process instructions given by the user.
What are the Main Types of Registers in Computer
Register in computer are divided into two main categories.
- Internal registers –
- User-accessible registers
Internal registers are computer registers that are only used inside the processor and cannot be accessed externally. The registers work in pairs or as a single unit. Additionally, these registers are meant for performing program execution and controlling information being processed by the computer. There are four types of internal registers.
- General purpose registers
- Address registers
- Condition code registers
- Data registers
General Purpose Registers
General purpose registers computers are defined by the programmer. A coder feeds the computer with instructions. Thereafter, the registers instruct the processor to execute the programmer’s instructions. However, general purpose registers computer are mainly designed for data transfer operations. A data register could be used to store a piece of data, but cannot be implemented in the operation of an operand address. There are various types of address registers for general purpose computer processors;
Segments are definite placeholders that are defined by a computer program for data, code and stack storage. There are three classifications of segment registers.
- Data Segment – The data segment is a storage location for work areas, constants, and data.
- Stack Segment – The stack segment contains a record of return addresses and data for subroutines and procedures.
- Code Segment – The data segment contains the total number of all executed instruction.
Index registers are indexing memory locations for addresses, addition, and subtraction. There are two primary sets of index pointers; Source Index and Destination Index.
The stack pointer refers to the current data location within a program stack. The pointer also provides an offset value within the program stack.
Condition Code Registers
Condition Code Registers are five-length bits that are controlled by the arithmetic logic unit (A.L.U). The condition code registers are result holders for logic operations and arithmetics.
Data registers in computer storage is a memory storage location for data being transferred to and fro immediate access storage during execution.
Memory Buffer Register
The memory buffer register (MBR) holds pieces of data along the computer’s control unit, while the data is being written to, or read from the main memory. MBR functions like a buffer. Anything copied from the memory is stored here for the processor to use the content for instructions execution.
Memory address registers
The memory address register is the other half of the memory buffer register. The MAR is the processor register for storing the memory address of data pieces that will be fetched from the C.P.U. When data needs to be executed or to be accessed by a client, the MAR stores its location address. When the piece of data is stored in MAR, the processor addresses it to the MBR.
User Accessible Registers
User accessible registers have a large storage space than internal registers. The following are types of user-accessible registers
- Floating point register – The floating point computer registers are used for temporary storage of floating point numbers.
- Conditional register – These are computer registers that determine whether a particular instruction should be executed by the processing unit or not.
- Constant registers – These are registers that can store read-only data types.
- Special purpose registers – The SPR is used to store program status. The special purpose register comprises a program counter, status register, and a stack pointer.
- Vector registers – Vector registers are storage locations for pieces of data being processed under an instruction set of one-dimensional arrays
Closing Remarks Register computer are high-speed memory locations. The registers store data temporarily. Therefore, it means that data storage is volatile. Understanding the core functions of the control unit is fundamental in gaining the concept behind computer registers.