The framework of a computer consists of the processor, memory, input and output units. The processor has the following components.
The arithmetic-logic unit (ALU) in which all arithmetic and logic operations are carried out.
Contains the memory address of the next instruction to be executed.
Coordinates all the activities taking place in the CPU, the memory and added peripherals. It does this by sending control signals to the devices.
Current instruction register
Contains the current instruction to be run.
Contains information about interrupts but also contains the output of the previous instruction, a different bit would be set for a different results. From this the CPU would decide if to branch out of a given sequence.
Memory address register
Holds the address of the memory location from which data will be read or to which data will be written. The MAR may sometimes hold the address of the instruction to be read.
General purpose registers
Used for performing arithmetic functions, CPUs can contain only one or a number of general purpose registers. A set of instructions could be the following where the numbers are memory locations.
- Load contents of 1000 into the accumulator
- Add the contents of 1001 to the accumulator
- Store contents of accumulator in 1002
Memory data register or Memory buffer register
Used to temporarily store information read from or written to the memory. All transfers from memory to the CPU go via the memory data register. Serving as a buffer region to compensate for the difference in speed between the CPU and memory.