Ref: Tanenbaum A. Structured Computer Organization
Ref: Capron HL Computere - Tools for an Information Age (5th ed) Chapter 3
A basic computer consists of the following devices connected together by a collection of wires called a bus: These devices primarily consist of a processor, some memory and input/output devices.
The Processor
The processor or Central Processing Unit primarily consists of the following components. It must be noted however that modern processors are far more complex that the basic model. It's purpose is to execute the instructions in sequence by fetching them from the main memory (in sequence) where the program is stored, examining them and then executing them one after the other.

Arithmetic Logic Unit
This part does all of the work. It performs all of the arithmetic and logic calculations. In the basic model, all arithmetic can be performed by arithmetic calculations.
Subtraction is performed by addition of negative numbers
Multiplication is performed by cumulative addition. Eg 6x5 is 5+5+5+5+5+5
Addition
Value 1 |
Value 2 |
Result |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
10 |
Logic - AND
Value 1 |
Value 2 |
Result |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
Logic - OR
Value 1 |
Value 2 |
Result |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Logic - NOT
Value 1 |
Result |
0 |
1 |
1 |
1 |
Registers
These are a collection of high-speed memory that stores the current instruction, data that relates to the instruction and other data that specifically relates to the current state of the computer. Some important registers are the program counter (PC) that stores the position within the program of the current instruction and the instruction register (IR) that holds the current instruction being executed.
Control Unit
The main purpose of the control unit is to fetch the instruction from main memory and determine the type of instruction. As well, it controls all aspects of the computer's operation as determined by the instruction being carried out.
Fetch-Execute cycle
The CPU executes instructions in the following manner:
Repeat
Fetch the instruction from memory and place in the Instruction Register
Determine the type of instruction
Fetch the data from memory if required and place into registers
Execute the instruction
Store the results
Until End-of-Program
More information can also be found at
Author: Mike Leishman