The Central Processing Unit is the most important component of every computer. A CPU has several high-speed storage units known as registers. In computer system architecture, registers are temporary storage unit to store or hold and transfer data or instruction. Registers are closely connected to the Arithmetic and Logic Unit (ALU) inside the CPU so that data or instruction can be accessed faster. Registers may not only store data, but also the address in memory where the data is stored.
If you need assistance with writing your essay, our professional essay writing service is here to help!Essay Writing Service
3.1 How Register works?
Registers work with CPU to store data and access it. It can be clearly seen that registers are the essential component in computers because CPU cannot directly access data that is stored in the memory and it must be first pass through the registers. Whenever CPU gets the data or executes the instruction code, a cycle known as Fetch-Execute Instruction Cycle is taken place.
Figure 1: Fetch-Execute Instruction Cycle
The “Fetch” part is the fundamental of the cycle. In this stage, CPU fetch the data or instruction from the main memory. Following by this, CPU hold them in the registers, the temporary memory areas.
The “Decode” part is the second stage in the cycle. In this stage, CPU decode the data or instruction that it has just fetched. The main purpose of this step is to make sure that CPU has understand and interpret the set of commands which is to execute the instruction by later stage.
The “Execute” part is the last stage in the cycle. In this stage, data or instruction is being processed or executed. The consequence of the process will be later stored in another register for further use.
Once the last stage is carried through, CPU will once again begin another Fetch-Execute Instruction Cycle.
3.2 Types of Registers
There are various types of registers being used in modern computers nowadays for different purpose. Each register is wired within the CPU to perform its specific role.
Registers can be divided into two categories according to their particular use: general purpose and special purpose.
3.2.1 General-Purpose Registers
General purpose registers deal with a wide variety of performance. They are used to hold data values or intermediate results that will be used frequently. In general, a CPU uses eight general-purpose registers such as accumulator, data register, address register, source index, destination index, base pointer, stack pointer, and base register. The first three general-purpose register are to be discussed in more details in this report.
Accumulator, is a register to perform calculation as well as holding the results of computations. Basic operations like add, subtract, multiplication or division can occur within the accumulator register. Accumulator register stores the operands used in arithmetic operations and hold the results of calculations formed. As Bartee, T. C. (1965, p.570) said, “when two numbers are added, the augend is initially stored in the accumulator register; the addend is then read from the memory; and the sum is placed in the accumulator.” Arithmetic operations such as division and multiplication are performed similar as the process above. Furthermore, the accumulator can be used to perform the logical functions like AND and OR.
As indicated by Irv.E (2010, p.202), the memory data register (MDR), sometimes known as the memory buffer register, will hold a data value that is being stored to or retrieved from the memory location currently addressed by the memory address register. Memory data register and memory address register (to be discussed later) are more closely associated with the workings of memory.
When a CPU wants to retrieve data from RAM, it must get the data’s memory address. The process of obtaining the memory address of the data involving a register which is known as memory address register. “The memory address register holds the address in the memory that is to be “opened” for data.” (Irv.E, 2010, p. 204) In simple words, this register only hold the data memory location that requires to be accessed. CPU will never perform arithmetic or calculation on the memory address registers.
3.2.2 Special-Purpose Registers
Some registers serve specific functions within the CPU. Several of the more important of these registers are instruction register and program counter.
In CPU, instruction register is used to store or hold the actual instruction being loaded, decoded or executed currently. After loaded the instruction from memory, it is decoded and then executed. Consequently, instruction register serves the data input to the part of decoding process. According to Stephen D. (1994, p.169), decoding refers to the separation of the instruction into its op code and operands, the movement of data (such as loading data into a register from a memory address in one of the operands), and the generation of control signals to the ALU for instruction execution.
Another special-purpose register in CPU is program counter, also called the instruction pointer, holds the address of the instruction being executed currently or the address of the following instruction to be executed. For example, suppose there is an instruction being executed and after the arithmetic and logic unit (ALU) processed it, the processor will search for the second instruction to be executed. Thus, program counter is responsible for the following process, which is to track and store the address of the following instruction that is going to be executed for the purpose of saving time.
3.3 Register Size
How to measure the size of a register? It is measured by the number of bits that a register can keep. Thus, registers are buckets of bits which can store data in the processor. Earlier processors had registers with fewer number of bits such as 4-bit and 8-bit. At present, the most common used are 16-bit register and 32-bit register.
A 16-bit microprocessor was the first of CPU architectures. It composed of a set internal general purpose registers such as AX, BX, CX, and DX. Each register contains a binary number made up of bit positions 15 to 0. The accumulator register, normally named as the A register is an example of 16-bit registers. As stated above, A register is used to hold the result of mathematical and logical operations. When there is a multiplication or division takes place, the register that store the result in the 8086 microprocessor is called AX register. As identified by Kenneth J. (1995, p.81), the AX register is 16 bits long and is divided into two 8-bit parts named AH (the high byte of AX) and AL (the low byte of AX).
Our academic experts are ready and waiting to assist with any writing project you may have. From simple essay plans, through to full dissertations, you can guarantee we have a service perfectly matched to your needs.View our services
A 32-bit microprocessor was announced to replace the previous version because computer applications began to demand faster microprocessor speed. The major change of this processor is the growth of internal working registers from 16 to 32 bits. “Thirty-two bit working registers means that the 80386 can address physical memory as large as 4,294,967,296 (4 giga) bytes.” (Kenneth J., 1995, p. 651) Due to the changes, the 16-bit microprocessor’s internal general purpose register AX, BX, CX, and DX has increased to 32 bits in length. Thus, there will be new names for the 32-bit registers by adding an E (Extended) in front of old names. For instance, the register AX will change to register EAX, and so on.
3.4 Organization Types of Register
3.4.1 Intel Corporation
Intel Corporation is one of the world’s largest inventor and manufacturer of microprocessor. Intel has released numerous version of microprocessor such as the 8086, 80186, 80286, 80386, 80486, Pentium and Pentium Pro.
Intel’s first practical 32-bit microprocessor, the 80836 microprocessor arrived in 1986. It represented a major advancement in the computer architecture field. “The 80386 microprocessor features multitasking, memory management, virtual memory with or without paging, software protection, and a large memory system.” (Barry B., 1997, p. 622)
The register set of the 80836 microprocessor consists of extended registers include EAX, EBX, ECX, EFLAGS and so forth. Several supplemental segment registers also can be found in this microprocessor: control, debug and test register. These registers deal with the system debugging tasks and memory management in the protected mode.
The first 64-bit desktop system – the Power Mac G5 was announced by Apple in June 2003. Amit S. (2006, p. 156) commented that initial G5-based Apple computers used IBM’s PowerPC 970 processors. These were followed by the systems based on the 970FX processor.
“The 970FX has two privilege modes of operation: a user mode (problem state) and a supervisor mode (privileged state).” (Amit S., 2006, p. 188) The set of architected registers can be categorized intro three levels: User Instruction Set Architecture (UISA), Virtual Environment Architecture (VEA), and Operating Environment Architecture (OEA). The UISA and VEDA registers can be accessed by both privilege modes, whereas the OEA registers can be only accessed by supervisor mode.
To compare with the Intel processor’s architecture, Apple’s processor has the main differences. Most of the Intel’s general purpose registers are in 16-bit and 32-bit wide, while the general purpose registers of Apple are all in 64-bit wide. In addition, the registers of Intel are categorized upon the functions and uses; Apple are categorized upon their modes of operation.
Amit S.. (2006). Mac OS X Internals. United States: Pearson Education, Inc.
Bartee, T. C.. (1965). Design of an Accumulator for a General Purpose Computer. [Online]. December 2006. Available
[Accessed: 7th January 2013]
Barry B.. (1997). The Intel Microprocessors. United States: Prentice-Hall, Inc.
Irv E.. (2010). The Architecture of Computer Hardware, Systems Software & Networking. 4th. Asia: John Wiley & Sons Pte Ltd.
Kenneth J.. (2011). The 8086 Microprocessor: Programming and Interfacing the PC. India: Cengage Learning India Private Limited.
Stephen D.. (1994). Systems Architecture: Hardware and Software in Business Information Systems. United States: boyd & fraser publishing company.
Teach-ICT.com. (n.d.) [Online Image]. Available from: http://www.teach-ict.com/gcse_computing/ocr/212_computing_hardware/cpu/miniweb/pg3.htm#. [Accessed: 7th January 2013]
Cite This Work
To export a reference to this article please select a referencing stye below:
Related ServicesView all
DMCA / Removal Request
If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: