A computer system consists of the physical computer, called the hardware, and the programs, called the software, that instruct the machine. The term architecture refers to the way the computer hardware is organized. There are several variations but basically the computer hardware is organized into components based on their function. The two primary components are the Central Processing Unit (CPU) which does the processing of data (executing instructions) and main memory which holds the data and instructions the CPU is currently using. These two units work together very closely (details below!) to do the "computing." This organization is much the same as the organization outlined by John von Neumann over 50 years ago and is often called the von Neumann architecture. One key aspect of this architecture is that the programs are actually stored in the memory of the computer just as other data.
Of course, in addition to the primary components to do the computing, the computer needs means of communicating with the user so it has input/output devices and there needs to be a way to store programs and data long term. The main hardware components and their functions are summarized below.
Step 1:
"fetch" the instruction from main memory,
Step 2: "decode" the instruction (figure out what it says to do), then
Step 3: send signals to the
unit of the computer that will do the actual execution of
the instruction ("execute").
Of course this begs the question: How does it do all of this? How does it know which instruction is next (after all programs are full of instructions!)? To get a general idea we look more closely at the CPU and the Fetch-Execute Cycle.
There are several small memory locations (called registers) in the CPU that are used to store data as the CPU works. Two of these are important in helping the Control Unit keep track of things in the Fetch-Execute Cycle. In particular the Control Unit must know WHERE in memory the next instruction is and it needs to have the instruction available for decoding. The two registers that contain this information are:
The decoding step is done by a circuit called the Instruction Decoder.
Click here for a more detailed explanation of the Fetch-Decode-Execute Cycle and example.
In personal computers, the circuits that make up the CPU are all on a single silicon chip called the microprocessor. Check out the techweb.com Web site for more information about microprocessor chips. The link takes you to an encyclopedia. Look up the word microprocessor to see the insides of a microprocessor and the word chip to see more information about chips in general (including their history and an explanation of how they are made).
The CPU and main memory are realized in chips mounted on a circuit board called the motherboard or system board. The different components are connected by a group of wires called a bus. Data, instructions, and control signals travel along the bus as the various components communicate with each other.
The above description gives a general overview of basic computer hardware. There are many variations in modern computers designed to speed the computer up. Many modern computers are multiprocessors; that is, they have more than one CPU. Most modern computers have an additional type of memory called cache. Cache is an intermediate form of memory designed to speed up access to data. There is RAM cache which is used to speed up the CPU's access to data in RAM and disk cache which is used to speed up access to data on disk.