Edexcel GCSE Computer Science

Last Accessed

Recently visited lessons will appear here for quick access.Start exploring your first lesson today!

Paper 1: Principles of Computer Science

Topic 1: Computational thinking

1.1.1-1.1.2 - Decomposition, abstraction and subprogramsSpecification point 1.1.1 is about making real-world problems manageable with decomposition and abstraction; 1.1.2 connects that thinking to the benefits of subprograms. By the end, you will be able to choose what to split, what detail to leave out, and explain precisely why those choices help.
1.2.1 - Control flow, input and outputAlgorithms are where a solution stops being a vague idea and becomes a route that someone else can follow. In this lesson, you will read and write sequence, selection, count-controlled repetition, condition-controlled repetition and iteration, while keeping input, processing and output clear. You...
1.2.2 - Variables, constants and data structuresA single name can keep track of one value, while a data structure can organise a whole collection without a tangle of separate names. In this lesson, you will follow and write short algorithms that use variables, constants, strings, records, and one- and two-dimensional arrays precisely.
1.2.3 - Operators in algorithmsOperators are the small symbols and words that make an algorithm calculate, compare and decide. By the end of this lesson, you will be able to follow their effect precisely and write arithmetic, relational and logical expressions that match a requirement.
1.2.4 - Trace tables and algorithm outputsAn algorithm can look fixed on the page while its variables keep changing underneath. In this lesson, you will expose those changes in a trace table, use supplied data to determine exact output, and find the value held by a variable at a named point.
1.2.5 - Program errors and logic correctionSome programs stop dramatically; others finish calmly with exactly the wrong answer. You will learn to distinguish syntax, runtime and logic errors, then use requirements and state evidence to locate and correct logic errors in written algorithms.
1.2.6 - Search and sorting algorithmsFinding one value and putting a whole list in order look simple until the list grows. This lesson will help you trace linear and binary search, follow bubble and merge sort, and explain exactly what each algorithm checks, swaps, splits or merges.
1.2.7 - Algorithm testing and efficiencyTwo algorithms can produce the same result yet demand very different amounts of work. In this lesson, you will use test data and logical reasoning to decide whether an algorithm is fit for purpose, then compare efficiency by counting comparisons, loop passes and memory use.
1.3.1 - Truth tables and Boolean logicA truth table is a small grid with no room for guesswork: every possible input combination must appear once. In this lesson, you will apply AND, OR and NOT accurately in truth tables with up to three inputs, then use them to solve short logic problems.

Topic 2: Data

2.1.1-2.1.3 - Binary states, unsigned and signed integersBinary is a pattern whose meaning comes from how it is interpreted. In 2.1.1 you will connect binary to data and instructions and count the states possible with a given number of bits; in 2.1.2 you will distinguish unsigned from two's-complement signed integers; and in 2.1.3 you will convert 8-bi...
2.1.4-2.1.5 - Binary arithmetic, shifts and overflowA row of bits can perform arithmetic, but its fixed width sets a hard limit. In 2.1.4, you will add positive binary patterns and apply logical and arithmetic shifts with the correct fill rule. In 2.1.5, you will recognise and explain when the exact result cannot fit in the available bits.
2.1.6 - HexadecimalLong strings of 0s and 1s are awkward to handle, but hexadecimal gives each group of four bits a single symbol. By the end of this lesson, you will be able to explain why people use this notation and convert accurately in both directions.
2.2.1 - Character encoding with ASCIITo us, A, a and a blank space are obvious; to a computer, each needs an agreed binary pattern. In this lesson, you will use 7-bit ASCII to encode and decode short text, and explain why seven bits provide 128 different codes.
2.2.2 - Bitmap imagesZoom far enough into a bitmap and the smooth picture becomes a grid of coded squares. In this lesson, you will turn binary patterns into pixels, reason about resolution and colour depth, and explain how those choices affect detail and raw image size.
2.2.3 - Digital soundSpecification point 2.2.3 turns a changing sound wave into a sequence a computer can store. You will connect amplitude, sample rate, sample interval and bit depth, then use those links to explain why two digital recordings can represent the same sound with different accuracy.
2.2.4 - Limits of binary representationA tiny change from four bits to five doubles the number of possible codes. This lesson shows how a fixed bit limit can restrict characters, colours and sound levels, and how to choose a bit width that is large enough for the job.
2.3.1 - Storage units and file-size calculationsStorage labels such as KiB and MiB look deceptively similar, but each step changes by a factor of 1024. In this lesson, you will rank binary storage units, convert between them, and construct reliable expressions for capacity, image data and audio data without losing track of bits and bytes.
2.3.2 - Lossy and lossless compressionA smaller file is easier to store and send, but making it smaller can involve an important choice: must every original bit be recoverable? This lesson will help you explain why compression is needed, distinguish lossless from lossy compression, and choose the suitable method for a given purpose.

Topic 3: Computers

3.1.1 - Von Neumann architecture and fetch-decode-executeA processor does not run a whole program in one leap: it moves one instruction through a precise sequence of small steps. In this lesson, you will follow those movements through RAM, CPU registers and buses, then explain how fetch, decode and execute work together. By the end, the names will desc...
3.1.2 - Secondary storageSwitch a computer off and its saved work should not vanish. In this lesson, you will explain the role of secondary storage, describe how magnetic, optical and solid-state technologies hold data, and choose a suitable type from evidence rather than labels.
3.1.3 - Embedded systemsA washing machine can sense water temperature, time a cycle and control a motor without being a laptop in disguise. In this lesson, you will learn what makes its controller an embedded system, how information moves from sensors to outputs, and how to explain why embedded systems suit particular j...
3.2.1 - Operating systemsAn operating system is the quiet coordinator behind every open file, running app and connected device. This lesson shows how it controls hardware and software, shares limited resources, and gives each user an appropriate way into the system. By the end, you will be able to explain file, process,...
3.2.2 - Utility softwareA corrupted file, a failed drive and a slow magnetic hard disk do not need the same fix. This lesson makes the five utilities in 3.2.2 precise enough for you to choose one and explain how its action solves a stated problem.
3.2.3 - Robust software and vulnerability detectionA program can appear reliable until an unexpected value or a hidden weakness puts it under pressure. In this lesson, you will judge what makes software robust, connect vulnerabilities to their exploitation, and use audit trails and code reviews to find evidence of weaknesses.
3.3.1 - High- and low-level languagesA line of code can hide the processor's details or expose them almost instruction by instruction. In this lesson, you will compare high- and low-level languages and choose a suitable level by linking each task's needs to a language characteristic.
3.3.2 - Compilers and interpretersThe same high-level source code can take two very different routes before a processor can follow it. You will learn how compilation and interpretation work, compare their consequences, and justify which approach fits a given situation.

Topic 4: Networks

4.1.1-4.1.2 - Network purposes, LANs and WANsNetworks turn separate devices into systems that can share data, resources and work. In 4.1.1 you will explain why computers are connected; in 4.1.2 you will distinguish a LAN from a WAN and justify which one fits a situation. By the end, a school with two distant sites will no longer look like j...
4.1.3 - Internet structure, IP addresses and routersSending one request across the Internet can involve several independently run networks and a chain of router decisions. In this lesson, you will learn how backbones and connection points fit together, how IP addresses identify destinations, and how each router chooses the next step.
4.1.4 - Wired and wireless performanceIn specification point 4.1.4, you will learn why two connections to the same network can feel very different. You will separate bandwidth from actual speed and latency, then compare the range and performance of copper, fibre, Wi-Fi, Bluetooth, Zigbee, RFID and NFC. By the end, you will be able to...
4.1.5 - Transmission calculationsA download time is not guesswork: it follows from how much data must move and how quickly bits are sent. You will learn to read network-speed units, make the units compatible, and construct expressions for file size, transmission rate and time.
4.1.6 - Network and email protocolsOne web page or email can use several protocols, with each set of rules doing a different job. In specification point 4.1.6, you will learn how Ethernet, Wi-Fi, TCP/IP, HTTP, HTTPS, FTP, POP3, SMTP and IMAP cooperate, then choose and justify the right protocol for a situation.
4.1.7 - The four-layer TCP-IP modelA message does not leap straight from an app onto a cable or radio wave. This lesson follows data down the four TCP/IP layers at the sender and back up at the receiver, so you can identify what each layer contributes and explain the journey precisely.
4.1.8 - Bus, star and mesh topologiesThe shape of a network changes what happens when a cable fails, a device is added or reliability matters most. This lesson makes bus, star and mesh structures easy to recognise and gives you a precise way to justify which one fits a situation.
4.2.1 - Network vulnerabilities and protectionA secure network must protect its data, services and equipment without blocking legitimate users. In this lesson, you will learn why weaknesses matter, how authorised penetration testing and ethical hacking reveal them, and how access control, physical security and firewalls protect different rou...

Topic 5: Issues and impact

5.1.1 - Environmental impacts of digital technologyA digital device may look clean and quiet on a desk, but its environmental story begins before it is switched on and continues after it is replaced. In 5.1.1, you will connect energy use, manufacture, replacement cycles and disposal into precise cause-and-consequence chains. You will also judge h...
5.2.1 - Personal data, privacy and consentA single app account can reveal far more than a username: where someone goes, what they do and who they know. This lesson makes the boundaries around personal data clear, then shows how privacy, ownership, consent, misuse and data protection create both ethical and legal questions. You will learn...
5.2.2 - AI, machine learning and roboticsAI can recommend who gets an interview, while a robot can turn a software decision into movement in the physical world. This lesson makes four questions precise: who must answer for the system, how harm is prevented, how unfair patterns arise, and who may be legally responsible when something goe...
5.2.3 - Intellectual-property protectionA software product is not just one thing: its code, technical inventions, brand and permitted uses can each need different protection. Specification point 5.2.3 will help you distinguish copyright, patents, trademarks and licensing, then select and justify the right protection in a Paper 1 context.
5.3.1 - Malware, vulnerabilities and social engineeringCyberattacks often succeed by combining harmful software, a weakness in technology and a decision made by a person. This lesson will help you distinguish malware types, explain how technical vulnerabilities are exploited, identify social-engineering techniques and follow their effects through a c...
5.3.2 - Protecting systems and dataA single security measure cannot do every job. In 5.3.2, you will learn how anti-malware, encryption, acceptable-use policies, backup and recovery protect systems and data, then match each method to a risk and explain its effect precisely.

Paper 2: Application of Computational Thinking

Control flow and data

6.2.2 – Count-controlled loopsUse for and range to repeat a block a planned number of times. Trace start, stop and step, accumulate results, and reason through nested loops and zero-pass cases.
6.3.1 – One-dimensional listsStore related values in one-dimensional lists, read and replace items by index, and trace changes that shift positions. Use slices and indexed loops to copy and update a complete array.
6.2.2 – Condition-controlled loops and iterationControl repetition with changing state, process input until a sentinel, and iterate directly over stored values. Explain zero-pass cases and show why a loop terminates.
6.3.3 – String positions and substringsTreat text as a sequence with precise positions. Measure strings, extract substrings, build new strings and handle empty or boundary cases before accessing characters.
6.3.3 – Processing and formatting stringsChoose string methods for searching, cleaning, splitting and classification. Combine transformations and use the supported format descriptors to produce clear labels, aligned fields and precise decimal displays.
6.4.3 – Validate inputChoose checks that match an input rule, put them in a safe order and ask again when data is unsuitable. You will use presence, length, range and pattern checks, and distinguish valid data from a true fact.
6.3.1 – Records and two-dimensional listsRepresent related fields as records, select and update values with two indexes, and process rectangular tables without confusing rows with fields.