You can print this page for a quick reference guide or you can use the tools below to create printable test sheets
4.1.1: understand the input-process-output model
Keyword
Definition
Input
the data that the program reads in (from a user or device)
Output
the information that the program calculates, displays or saves
Process
the calculations or algorithms that the program follows to generate the output from the input data.
4.2.1: understand the function of the hardware components of a computer system (CPU, main memory, secondary storage, input and output devices) and how they work together
Keyword
Definition
CPU
Central Processing Unit (The brain of a computer that follows instructions to process data)
Input Device
mouse, keyboard, scanner, graphics tablet, iris scanner, touch screen or anything that sends data into a computer
Main memory
Random Access Memory used to store instructions and data whilst a program is running
Output Device
speakers, printer, display or anything that receives data from a computer
Secondary storage
Hard Disk Drive used to store instructions and data whilst the computer is switched off or whilst a program isn't running
4.2.2: understand the function of different types of main memory (RAM, ROM, cache)
Keyword
Definition
Cache
small amount of very fast memory that sits between the CPU and main memory to store frequently accessed data and instructions
Non volatile
a type of storage where the data is stored safely even when the power is turned off
Random Access Memory
Volatile storage, used to store instructions and data whilst a program is running. Otherwise known as main memory
Read Only Memory
Small amount of non volatile storage, used to store instructions and data tell the computer what to do when it first switches on.
Volatile
a type of storage where the data is lost when the power is turned off
4.2.3: understand the concept of a stored program and the role of components of the CPU (control unit (CU), arithmetic/logic unit (ALU), registers, clock, address bus, data bus, control bus) in the fetch-decode-execute cycle (the Von Neumann model)
Keyword
Definition
Address bus
connections between the CPU and other components to transmit the location of data / instructions being written or read
Arithmetic Logic Unit
Performs maths calculations and comparisons to carry out instructions
Clock
an electronic signal that keeps changing from on to off at a constant rate to keep each part of the CPU in sync
Control bus
connections between the CPU and other components to transmit signals that trigger each stage of the fetch-decode-execute cycle
Control Unit
part of the CPU that controls all of the other components.
Data bus
connections between the CPU and other components to transmit the value of data / instructions being written or read
Decode
Using the control unit to understand the current instruction and work out how to follow it
Execute
Using the ALU to run the current instruction
Fetch
Getting an instruction from main memory into the registers inside the CPU
Registers
Very fast memory locations used in the fetch-decode-execute cycle to store tiny amounts of data or single instructions
Von Neumann
a type of CPU design model where data and instructions are both saved in the same memory store
4.2.4: understand how data is stored on physical devices (magnetic, optical, solid state)
Keyword
Definition
Capacity
Magnetic storage devices can store more bits and bytes than optical or solid state
Cost
Removable media for optical storage devices (e.g. CDs, DVDs or Blu-Rays) can be manufactured and distributed much more cheaply than magnetic or solid state storage devices
Magnetic
a type of storage device that stores bits (0s and 1s) using the polarity of tiny magnetised sections of a tape or spinning metal disc
Optical
a type of storage device that stores bits (0s and 1s) using a light sensor to detect whether or not a laser reflects back off sections of a spinning disc
Solid state
a type of storage device that stores bits (0s and 1s) using non volatile flash memory without any moving parts.
Speed
Solid state storage devices can access data in less time than magnetic or optical
4.2.5: understand the concept of storing data in the cloud and other contemporary secondary storage
Keyword
Definition
Cloud
storing data on a device that's always powered on and connected to the Internet
Data centre
Buildings full of computer servers storing huge amounts of data with an always-on network connection
Virtualisation
hiding the true nature physical nature of a computing resource, e.g. dropbox storage appearing as a drive on your computer when it's actually thousands of miles away
4.2.6: understand the need for embedded systems and their functions
Keyword
Definition
Embedded
a type of computer system where the processor, memory and input / output interfaces are all on the same chip or printed circuit board (PCB). Often just has one use (e.g. control a microwave oven)
General purpose
a type of computer system that can be customised for lots of different tasks like a PC
Real-time
a type of computer system where accurate timing is critical to the function of the device (e.g. brakes on a car)
4.3.1: be able to construct truth tables for a given logic statement (AND, OR, NOT)
Keyword
Definition
AND
type of logic gate that only gives an output of True if both inputs are also True
Binary
0 or 1
Boolean
True or False
Logic
Combining binary or boolean values with AND, OR or NOT
NOT
type of logic gate where the output is the opposite of the input
OR
type of logic gate that gives an output of True if either or both inputs are True
Truth table
a grid showing the binary or boolean output for all the possible combinations of inputs into a logic statement
4.3.2: be able to produce logic statements for a given problem
Keyword
Definition
AND
type of logic gate that only gives an output of True if both inputs are also True
Binary
0 or 1
Boolean
True or False
Logic
Combining binary or boolean values with AND, OR or NOT
NOT
type of logic gate where the output is the opposite of the input
OR
type of logic gate that gives an output of True if either or both inputs are True
4.4.1: know what an operating system is and how it manages files, processes, hardware and the user interface
Keyword
Definition
Application software
programs that the user installs and runs to get work done or have fun
Hardware
the physical devices that the OS has to be able to control and manage access for each process
Memory
Storage space that the operating system has to be able to allocate and access for programs to store data and instructions
Operating system
software that manages files, memory, processes, hardware and provides a user interface to control systems software and application software
Processes
Instructions and data for individual programs that are loaded from secondary storage into main memory. The OS needs to be able to start, stop and manage resources for each program.
Systems software
programs that the operating system provides in order to share processor, memory and hardware resources between processes
User interface
the software that allows the user to control programs (using a mouse/keyboard) and allows the program to display information back to the user
Utility software
programs that the operating system provides to manage files, change settings and optimise performance
4.4.2: understand the purpose and functions of utility software (managing, repairing and converting files; compression; defragmentation; backing up; anti-virus, anti-spyware)
Keyword
Definition
Anti-spyware
a type of utility software that detects and removes programs which listen in to what the user types and does without their permission
Anti-virus
a type of utility software that checks each process to detect and remove malicious code before it causes any damage
Backup
a type of utility software that allows the user or operating system to make copies of files to secondary storage or an external / cloud storage device
Compression
a type of utility software that allows the user to reduce the amount of space a file or group of files takes on disk
Defragmentation
a type of utility software arranges data for each file so that it is stored in one particular area of a magnetic storage device in order to improve access speed. This is pointless on solid state devices because data can be read from any part of the SSD without the delay of physically moving the read / write head.
File Conversion
a type of utility software that allows files to be changed from one file format to another (e.g. from JPG to PDF)
File management
a type of utility software that lets the user rename, move, delete or copy files
File Repair
a type of utility software that allows corrupted or damaged files to be restored
4.4.3: understand how software can be used to simulate and model aspects of the real world
Keyword
Definition
Cost
a reason for using a simulation could be that a real life test might be very expensive
Risk
a reason for using a simulation could be that a real life test might cause damage to people or the environment
Simulation
software that runs as a model of something real in order to analyse or predict what could happen.
Software
programs that run on a computer
Speed
a reason for using a simulation could be that you can simulate multiple scenarios in less time than waiting for real life tests
4.5.1: understand what is meant by high-level and low-level programming languages and understand their suitability for a particular task
Keyword
Definition
Assembler
an example of a low level programming language because it gives the programmer complete control over timing and memory management but requires a lot of code to do even simple tasks
high level
a type of programming language that uses abstraction to hide aspects of how the CPU will deal with memory and hardware in order to make common tasks possible without using much code.
low level
a type of programming language that is that gives the programmer complete control over the CPU's use of memory and resources. Common tasks may involve writing large amounts of code
programming language
a way of describing an algorithm in a way that a computer can understand in order to run each instruction
Python
an example of a high level programming language because a small amount of code can be interpreted by the computer to solve a complex problem simply.
4.5.2: understand what is meant by an assembler, a compiler and an interpreter when translating programming languages and know the advantages and disadvantages of each
Keyword
Definition
Assembler
software used by a programmer to translate code from a low level programming language into machine code that can then be run
Compiler
software used by a programmer to translate code from a high level programming language into machine code that can then be run
Interpreter
software that translates and runs each line of code written in a high level programming language in real time
Machine code
the binary code that the CPU fetches, decode and executes
Translator
a compiler, assembler or interpreter that allows a computer to understand and run program code