Computers, the CPU and the stored program concept
Introduction
A computer is made up of 'hardware' and 'software'. These work together to make up a complete computer system. This computer system can then process instructions and data using the brain of the computer, known as the Central Processing Unit (CPU), which you will learn all about in future sections.
Hardware, software and peripherals
Hardware is anything that is physical, that you can touch, such as a keyboard, a web cam, a stick of RAM, a CPU chip or a pen drive. Software are the programs (or sets of instructions) that make the hardware do useful things. Examples of software include your favourite music program, a word processing program, your operating system and a web browser. Another piece of jargon that pops up from time to time is 'peripheral'. A peripheral is simply any piece of hardware that you can connect to the computer. Normally, you would do this by plugging it into somewhere on the outside of your computer system, such as a USB port or by using a wireless connection such such as Bluetooth. When you plug a peripheral into your computer, you are making a direct connection from the peripheral to the CPU, so it can be used.
Overview of a computer system and the role of the CPU
Data from the real world enters the computer via a range of input devices. Examples include a keyboard, mouse, microphone and graphics tablet. Once inside, the CPU processes the data. This simply means it works on it. When the data has been processed, the computer either outputs the results to the real world so we can use the results using a range of output devices such as speakers, a monitor or printer, or it stores the results using a range of storage media, such as a hard disk, a flash drive or a DVD. The CPU processes data according to sets of instructions, (usually called 'programs' or 'applications') written by programmers. All the applications that have been loaded into a computer are stored on the hard disk. When one needs to be used, a copy of that program is made and put into RAM. The CPU works with programs in RAM. The CPU cannot directly work with any programs or data held on a storage medium such as a hard drive or pen drive. If it wants to use them, it first has to move them into RAM. The CPU can work on billions of instructions in a second and many different programs, all (apparently) at the same time. In fact, the most commonly found CPU can work on only one program at a time, but it works so fast, switching between different programs, that it seems like you are using ten different programs at once! In addition, to input, output and storage devices and the CPU, a computer system may also have hardware that allows it to communicate with other computer systems to form networks of computers. It can use these networks to send and receive data between different computers across the globe very quickly.
The stored program concept
Both John Von Neumann and Alan Turing put forward the original thinking behind the 'stored program' concept. The idea behind this was that a program, which is a list of instructions that do something useful, had to be in main memory to be executed. The instructions are then fetched one at a time, decoded and finally executed. In the Von Neumann processor, all the instructions and the data that the instructions use are in the same memory. In another type of processor called the Harvard processor, the instructions and data are in their own separate memories. Both types of processor, however, use the basic stored program idea that programs have to be in memory before they can be used.