This series of resources is designed to lay the foundations of learners developing an understanding of what computers are and how they work. This level introduces the concepts of:
- computers are machines designed to do jobs
- computers have instructions to tell them how to do those jobs
The learning will be about identifying the different jobs computers do in their lives and the wider world. It is important to link between the physical computer (parts) and the instructions (apps/software) that controls them.
Computer systems have a common model, the von Neuman architecture, which almost every machine is designed with:
inputs – memory/processor/storage – outputs
The processor runs the software, executing one instruction at a time. The instructions (for every app running) is stored in memory until the processor is ready for the next line. So too, are any inputs until processed. Anything that needs to be kept after the computer is turned off is ‘saved’ in storage, such as a hard disk or ‘the cloud‘.
Computers can be connected to each other to share data and resources. The internet is the biggest and most common computer network in the world. Information is sent between computers using cables under the ground and under the sea. Although we often think of mobile devices being ‘wireless’ they use radio waves to send information a short distance to a router (WiFi) or transmitter (3G, 4G or 5G).
The world wide web or ‘web’ is the most common user-friendly software used to navigate the internet (the hardware). This is often done using web browsers, such as Edge, Chrome or Safari.
Computers use a voltage (on or off) to activate or not activate a series of switches. This is how a processor processes the code. IS is represented by a (high) voltage and the computer processes this using the number 1. IS NOT is represented by no or low voltage and the computer understands this to be the number 0. This is how every computer works.
The binary number system can only represent the number 0 or 1 in each place value. The first four place values being 8, 4, 2, 1 as opposed to our denary system which can represent 0-9 in each place, with the first four places being 1000, 100, 10, 1.
Modern computers use millions, if not billions, of microscopic switches, to make millions of decisions (selections) per second. This gives the illusion that computers can do lots of things at one time, such as run the operating system, web browser, play music, and display on the screen.
The main bit for learners is that computers are simple machines that have complicated processes. In order to make them easier to use Grace Hopper created the first ‘high level code‘ that looked like English. This is what we generally mean by code. Block-based code is an even higher level of code making it even easier to understand.
In between the inputs and outputs there are other components that make up the computer. Three of these components are the processor, storage and memory (sometimes called RAM (Random Access Memory)).
Learners should read and make notes to remember this information:
Computers store things (even when turned off) in storage, usually a disk (local disk, such as a Hard Disk (HDD) or DVD) or on the cloud (remote disk, such as OneDrive).
The computer loads the instructions it needs into the memory until the processor needs to use them.
The processor gets the instructions (one line at a time!) from memory and works out what it needs to do – this might be check inputs, display data on outputs, or make a decision (selection)
Processor: Inputs and outputs – BBC Bitesize
Memory: How is all our digital data stored? – BBC Bitesize
Storage: How do digital devices store information? – BBC Bitesize
They can then investigate Alan Turing and his role in the development of computing.
Alan Turing was a computer scientist and mathematician who was very important in the development of this structure and process. He also played an important part in WW2.
Computers were originally mechanical devices (see back to Tommy Flowers and Colossus!) and used switches to make the decisions (selection) but these were too big. Modern computers use tiny switches called transistors and can have billions in each computer (even a phone!)
Using literal switches meant a decision (selection) had to be made using Boolean logic (IS (True) or IS NOT (False)) – the switch is either ‘open’ or ‘closed’. So computers were programmed using binary (number system using only 0 (False) and 1 (True), instead of 0-9)
This gets complex, so keep learners to knowing computers store everything in 0s and 1s and let them wonder or investigate how this might work.
How is all our digital data stored? – BBC Bitesize
Investigate how Grace Hopper, a computer scientist, and mathematician, invented a form of code that looked like English. This made it easier for programmers to create instructions for computers and led to the block-code we have used so far.
A new concept to introduce is that of computer networks – two or more computers being connected and able to share data and resources. The internet is the biggest and most widely used example of this.
The internet relies on physical connections using cables. Learners might consider digital devices to be wireless but they are only able to send information a short distance using radio waves to either a router (computer) or transmitter (phone).
A Journey To The Bottom Of The Internet (youtube.com)
Thin underwater cables hold the internet. See a map of them all. (youtube.com)
https://www.barefootcomputing.org/resources/modelling-the-internet
ruby – hiding in plain sight internet components
Like most computer systems, the internet has been made easier to use with modern software, this is the world wide web or web.
Investigate the role of Tim Berners Lee in developing the web, web browser and some internet protocols (http, URL)
Learners should be able to describe the von Neuman model of a computer:
input, process, memory, storage and output
Learners should be able to use block-based code to create a short set of instructions in the correct sequence and using a selection and creating a variable:
Learners should be able to predict what a set of instructions in block-based code might do and fix it:
You must be logged in to post a comment.