The core ideas of computing — from binary to algorithms — with instant practice.
Computers store everything as binary — 1s and 0s. Understanding how numbers, and by extension text and images, are represented in binary is foundational.
Logic gates are the building blocks of every digital circuit. Each gate takes one or more binary inputs (0 or 1) and produces a single binary output by following a fixed rule. This lesson covers the gates you need for IGCSE and the truth table for each.
Real digital systems combine several gates into a logic circuit. This lesson shows how to trace a circuit, build a truth table for it, and write the Boolean expression it represents — the three ways the same logic can be described.
This lesson explains how computers represent text, sound and images as binary. You will learn about character sets such as ASCII and Unicode, how sound is sampled using sample rate and resolution, and how bitmap images are stored using pixels, colour depth and resolution, along with the effect each factor has on file size and quality.
This lesson covers how the amount of data is measured, from the bit up to the terabyte, and the distinction between the decimal units and the IEC binary units. You will practise calculating file sizes and learn the difference between lossy and lossless compression, including realistic examples of when each is used.
This lesson explains how data is moved from one device to another. You will compare serial and parallel transmission, the three directions of flow (simplex, half-duplex and full-duplex), how data is broken into packets with a header, payload and trailer, and the features and benefits of the USB standard.
This lesson explains why errors happen when data is transmitted and the methods used to detect them. You will learn about parity bits (odd and even), checksums, check digits, echo checks and the Automatic Repeat reQuest (ARQ) system, and you will work through a parity example step by step.
This lesson explains what encryption is and why we use it. You will learn the key terms plaintext, ciphertext and key, the difference between symmetric and asymmetric (public and private key) encryption, and why encryption does not stop data being intercepted but does make intercepted data meaningless to an attacker.
This lesson explains how a computer's central processing unit is built and how it runs a program. You will learn the von Neumann model, the job of each register and bus, and the step-by-step fetch-decode-execute cycle.
This lesson looks at what makes one CPU faster than another and why. You will learn how clock speed, the number of cores and cache size each affect performance, and what an embedded system is with real examples.
This lesson explains the difference between input and output devices and gives the common examples you need to know. You will also see how sensors act as input devices in monitoring and control systems.
This lesson explains the difference between the two types of primary memory, RAM and ROM, and how they differ from secondary storage. You will learn the three secondary storage technologies and what virtual memory is used for.
Software is split into two families: system software that runs and manages the computer, and application software that helps the user complete a task. In this lesson you will learn the difference between them, see clear examples of each, and understand the jobs an operating system does behind the scenes.
A computer can only run instructions written in machine code, so programs written by people must be translated first. This lesson explains what compilers, interpreters and assemblers do, how they differ, and the features an Integrated Development Environment gives a programmer to write and debug code.
The internet and the World Wide Web are often confused, but they are not the same thing. This lesson explains the difference, breaks down the parts of a web address, shows how a domain name becomes an IP address, and covers HTTP, HTTPS and cookies.
Computer systems and the data they hold face many kinds of attack. This lesson describes the main cyber security threats in the 0478 syllabus, explaining what each one does and how it is carried out so you can recognise and describe them accurately.
For every cyber security threat there are protection methods that reduce the risk. This lesson covers the main ways of keeping data safe, from firewalls and encryption to authentication and access levels, and helps you match the right protection to each threat.
Automated systems combine sensors, a microprocessor and actuators to run a task with little human involvement. This lesson explains how they work, the difference between monitoring and control systems, the pros and cons of automation, and what makes a robot a robot.
Artificial intelligence is about building computer systems that can carry out tasks that would normally need human intelligence. This lesson explains what AI is, the characteristics of an AI system, the idea of narrow and general AI, and looks at common examples along with the benefits and risks.
Every reliable program is built in ordered stages, from working out what is needed to keeping it running once it is finished. In this lesson we walk through those stages, learn how to break a problem into inputs, processes, outputs and storage, and see how top-down design and structure diagrams organise a solution into sub-systems.
An algorithm can be planned in more than one way. This lesson looks at the standard flowchart symbols and what each represents, shows how the same algorithm can be written as a flowchart or as Cambridge pseudocode, and practises reading a flowchart to work out what it outputs.
Searching finds an item in a list and sorting puts a list in order. This lesson explains linear search and binary search and why binary search needs a sorted list, then works through bubble sort and insertion sort, including how many passes each takes and how a list looks part way through.
Many programs reuse the same building blocks, such as adding up a total or finding the largest value. This lesson covers those standard algorithm methods, then looks at the difference between validation and verification, the common validation checks, and the categories of test data used to check a program thoroughly.
Every value a program stores has a data type, and choosing the right one keeps your code correct and efficient. In this lesson we meet the five basic data types, learn the difference between a variable and a constant, and practise declaring and assigning values using Cambridge pseudocode.
Selection is how a program chooses between different actions depending on the data. In this lesson we cover the IF statement in all its forms, the CASE OF statement, and how to build the Boolean conditions that drive those decisions.
Iteration means repeating a block of statements instead of writing it out many times. This lesson covers the count-controlled FOR loop, the two condition-controlled loops WHILE and REPEAT, the crucial difference between them, and how loops can be nested inside one another.
An array stores many values of the same type under one name, reached by an index number. This lesson explains why an array beats a pile of separate variables, how to declare and index 1D and 2D arrays the Cambridge way, and how to walk through an array with a FOR loop.
Subroutines let you name a block of code once and reuse it. In this lesson we separate a procedure from a function, see why we bother writing subroutines at all, and learn to pass values in with parameters and get a value back with a return.
A string is just an ordered list of characters, and once you can measure it and pull pieces out of it you can do real work like validating passwords or splitting a name. In this lesson we use the Cambridge pseudocode string functions LENGTH, SUBSTRING, UCASE and LCASE, plus the & operator for joining strings together.
Variables vanish the moment a program stops, so when we need data to survive we write it to a file on backing storage. In this lesson we cover why files are used and the Cambridge pseudocode text-file operations: opening a file for READ, WRITE or APPEND, reading to the end of the file, writing and closing it.
A single-table database is a tidy grid of records and fields, and SQL is the language we use to pull exactly the data we want out of it. In this lesson we cover the key database terms, why a primary key must be unique, and how to build a query with SELECT, FROM, WHERE and ORDER BY.
Ready for a real exam answer?
Get one written answer marked free by AI — the same marking ReviseWell runs for whole departments.
Get one answer marked free →