Processor Components (1.4.a)
The control unit manages the execution of instructions. It fetches the instruction, decodes it, and synchronises its execution. It then sends control signals to other parts of the processor in the order that the instructions are to be carried out. These signals are sent around the processor using pathways called buses. There are different types of buses depending on the type of signal they are expected to carry - the control unit uses a bus called the control bus to send commands to different parts of the processor.
The memory unit is where everything that the processor is going to use is stored. This includes all the program instructions and all the data needed to carry out those instructions, as well as the parts of the operating system that is being used at the time. One of the jobs of the control unit is to be able to find the information stored in the memory unit when it needs to be used.
Arithmetic Logic Unit (ALU)
The ALU is where things are actually done in the processor. It contains the circuitry that allows it to do arithmetic. It allows for logical decisions to be made. Finally, it is the gateway between the processor and the rest of the computer system. All input and output from the processor goes through the ALU, and waits there while the control unit decides what to do with it.
The program counter keeps track of where in memory the next instruction can be found so that a copy can be placed in the current instruction register, which holds the instruction that is currently being executed. The memory address register holds the memory address that contains the next piece of data or instruction that is going to be used. The memory data register acts like a buffer and holds anything that has been copied from the memory ready for the processor to use.
The accumulator is a section of the arithmetic unit where intermediate arithmetic and logic results are stored. Without a register like an accumulator, it would be necessary to write the result of each calculation (addition, multiplication, shift, etc.) to main memory, perhaps only to be read right back again for use in the next operation. Access to main memory is slower than access to a register like the accumulator because the technology used for the main memory is slower (but cheaper) than that used for a register, and because the path to the main memory is physically longer than the path to the accumulator.
A bus is a pathway through which information passes. Buses are similar to sets of wires, which are reserved specially for certain types of data. There are three important buses which are part of the system bus: the data bus, the address bus, and the control bus.
Data bus - carries data from one part of the computer to another.
Address bus - carries the address to which the data (in the data bus) should be delivered. Both the address and the data travel together until the correct component identifies its address, and collects the data being transported.
Control bus - carries commands from the control unit to other devices.
It is important to note that although the idea of a system bus was commonly used in the 1970's and 1980's, many modern computers use a variety of separate buses adapted to more specific needs.