The Central Processing Unit (CPU) is the part of the computer that executes instructions. CPUs are constructed from millions of transistors. Transistors are tiny pieces of silicon that will not conduct electricity if a low voltage is applied to them, but can conduct at higher voltage. They are therefore known as semi-conductors.

CPUs are often referred to as microprocessors. The principal manufacturers at present are Intel and AMD, who make the majority of the CPUs used in desktop and laptop computers, and ARM who make CPUs for smartphones and tablets. Check their websites for details of their current products.

A CPU has three main components, the Arithmetic and Logical Unit (ALU), the Control Unit and the Registers. Modern CPUs are integrated circuits (ICs) which combine these three components on a single silicon chip.

The ALU carries out the mathematical functions of addition, subtraction, multiplication and division and works in conjunction with the other components of the CPU to run many complex processes. A multi-core CPU can contain more than one ALU.

The Control Unit regulates the flow of information through the processor. It receives, decodes, stores results and manages execution of data that flows through the CPU. The Control Unit determines how and when data is processed and ensures that it is sent to the correct components of the computer.

Registers are small pieces of memory located inside the CPU. They can be thought of as the hardware version of a variable in software. The CPU contains a number of special-purpose registers:

Instruction Register (IR): The instruction register holds the instruction currently being executed.

Memory Data Register (MDR): The memory data register (also known as the memory buffer register or data buffer) holds the piece of data that has been fetched from memory.

Memory Address Register (MAR): The memory address register holds the address of the next piece of memory to be fetched.

Program Counter (PC): The program counter holds the location of the next instruction to be fetched from memory. It is automatically incremented between supplying the address of the next instruction and the instruction being executed.

Accumulator: The accumulator is an internal CPU register used as the default location to store any calculations performed by the arithmetic and logic unit.

General Purpose Registers: General purpose registers are available to store any transient data required by the program. For example, when a program is interrupted its state, ie: the value of the registers such as the program counter, instruction register or memory address register – may be saved into the general purpose registers, ready for recall when the program is ready to start again.

In general the more registers a CPU has available, the faster it can work.

Next: CPU Characteristics