| 3.1.1 | Representing algorithms | F4.4 Decomposition and abstraction, F5.1 What an algorithm is, F5.2 Flowcharts, F5.3 Pseudocode and the exam reference language, F5.4 Trace tables |
| 3.1.2 | Efficiency of algorithms | F5.9 Merge sort and comparing algorithms |
| 3.1.3 | Searching algorithms | F5.5 Linear search, F5.6 Binary search |
| 3.1.4 | Sorting algorithms | F5.7 Bubble sort, F5.8 Insertion sort |
| 3.2.1 | Data types | F1.8 Data types and casting |
| 3.2.2 | Programming concepts | F1.1 What a program is, F1.5 Comments and readable code, F1.6 Variables, constants and assignment, F2.1 Blocks and indentation, F2.4 Nested selection and match, F2.5 Count-controlled loops: for, F2.6 Condition-controlled loops: while, F2.7 Loop patterns, F13.9 Project: the revision robot |
| 3.2.3 | Arithmetic operations in a programming language | F1.9 Arithmetic operators |
| 3.2.4 | Relational operations in a programming language | F2.2 Selection: if |
| 3.2.5 | Boolean operations in a programming language | F2.3 else, elif and Boolean operators |
| 3.2.6 | Data structures | F3.3 Lists: one-dimensional arrays, F3.4 Iterating over a list, F3.5 Two-dimensional arrays, F3.6 Records |
| 3.2.7 | Input/output | F1.2 Output: print, F1.7 Input from the user |
| 3.2.8 | String handling operations in a programming language | F3.1 String handling, F3.2 Character codes and conversion |
| 3.2.9 | Random number generation in a programming language | F3.7 Random numbers |
| 3.2.10 | Structured programming and subroutines (procedures and functions) | F1.3 Calling functions, F4.1 Writing functions, F4.2 Parameters and return values, F4.3 Local and global variables, F4.5 Libraries and your own modules |
| 3.2.11 | Robust and secure programming | F1.4 Errors: syntax, runtime and logic, F6.1 Defensive design and validation, F6.2 Authentication, F6.3 Testing and test data, F6.4 Debugging logic errors |
| 3.3.1 | Number bases | F8.2 Binary and denary |
| 3.3.2 | Converting between number bases | F8.2 Binary and denary, F8.3 Hexadecimal, F13.5 Number and data questions |
| 3.3.3 | Units of information | F8.1 Bits, bytes and units |
| 3.3.4 | Binary arithmetic | F8.4 Binary addition, overflow and shifts |
| 3.3.5 | Character encoding | F8.6 Characters: ASCII and Unicode |
| 3.3.6 | Representing images | F8.7 Images |
| 3.3.7 | Representing sound | F8.8 Sound |
| 3.3.8 | Data compression | F8.9 Compression |
| 3.4.1 | Hardware and software | F9.3 Hardware, software and von Neumann |
| 3.4.2 | Boolean logic | F9.1 Logic gates and truth tables, F9.2 Logic circuits and expressions |
| 3.4.3 | Software classification | F9.9 Operating systems and utilities |
| 3.4.4 | Classification of programming languages and translators | F6.5 Languages and translators, F6.6 The IDE |
| 3.4.5 | Systems architecture | F9.4 The CPU and fetch-execute, F9.5 CPU performance, F9.6 Memory, F9.7 Secondary storage, F9.8 Embedded systems: inside BugBot |
| 3.5 | Fundamentals of computer networks | F10.1 What is a network?, F10.2 Network hardware and connections, F10.4 Network topologies, F10.5 Addresses and packets, F10.7 Protocols, F10.8 Layers, F10.9 Project: reliable delivery |
| 3.6.1 | Fundamentals of cyber security | F11.1 Why cyber security |
| 3.6.2 | Cyber security threats | F11.2 Malware, F11.3 Social engineering |
| 3.6.3 | Methods to detect and prevent cyber security threats | F11.5 Passwords and authentication, F11.6 Encryption, F11.7 Defending a network, F11.8 Writing secure programs, F11.9 Project: secure the robot |
| 3.7.1 | Relational databases | F7.2 Relational databases |
| 3.7.2 | Structured query language (SQL) | F7.3 SQL: SELECT, F7.4 SQL: two tables and changing data |
| 3.8 | Ethical, legal and environmental impacts of digital technology on wider society, including issues of privacy | F12.1 Impacts of technology, F12.2 Personal data and privacy, F12.3 Computer misuse and the law, F12.4 Copyright and licences, F12.5 Technology and the environment, F12.6 The digital divide and accessibility, F12.7 AI, robots and bias, F12.8 Technology, jobs and daily life, F12.9 Project: an impact report, F13.6 Long answer questions |