20 min read
Basic Computer Architecture
The von Neumann model: a CPU, memory, input and output joined by buses, with programs stored in memory.
What Does "Architecture" Mean?
A building's architecture is its plan — where the rooms are and how people move between them. A computer architecture is the same idea: the main parts of a computer and how data moves between them.
Almost every computer you will use — from a phone to a server — follows a plan described in 1945 by the mathematician John von Neumann and his colleagues. It is called the von Neumann architecture.
The Main Parts
Inside the CPU are three parts. You will study them in detail in the Hardware course.
- Control unit (CU) — the manager. It reads each instruction, works out what it means, and sends signals to the other parts to make it happen.
- Arithmetic logic unit (ALU) — the calculator. It adds, subtracts and compares numbers, and does logic (AND, OR, NOT).
- Registers — a few tiny, extremely fast storage places inside the CPU. They hold the instruction being worked on, the address being used, and results.
Outside the CPU are:
- Main memory (RAM) — holds the programs that are running and the data they are using.
- Input and output devices — let people and other machines talk to the computer.
- Buses — groups of wires that carry signals between the parts.
The Stored-Program Idea
Before this idea, early machines such as ENIAC were programmed by moving cables and switches. Changing the program could take days. With a stored program, changing the job is as quick as loading a file.
The first computer to run a program stored in its own electronic memory was the Manchester Baby, in England, on 21 June 1948.
The Three Buses
| The system bus | |||
|---|---|---|---|
Some chips, such as the small microcontrollers in a washing machine, use a Harvard architecture instead: instructions and data are kept in separate memories with separate buses, so both can be fetched at the same time. You only need to know that it exists and how it differs.
Practice
More lessons in Introduction to Computer Systems · Next: A Short History of Computing · Previous: What Is a Computer?
