IGCSE 0478 Computer Science Syllabus (2026-2028)
Welcome to your guide for the Cambridge IGCSE Computer Science (0478) syllabus! This course is designed to give you a solid foundation in computational thinking, programming, and how computer systems work behind the scenes.
Here is a breakdown of everything you’ll need to know for your exams in 2026, 2027, and 2028.
Aims of the Syllabus
Section titled “Aims of the Syllabus”The course aims to help you develop:
- Computational thinking skills
- An understanding of the main principles of solving problems using computers
- The skills necessary to solve computer-based problems using a high-level programming language (Python, Visual Basic, or Java) or pseudocode
- An understanding of the components of computer systems and how they interrelate
- An understanding of the internet as a communication tool and its associated risks
- An appreciation of automated and emerging technologies
Assessment Overview
Section titled “Assessment Overview”You will take two written papers, both externally assessed. Calculators are not permitted in either paper.
| Paper | Title | Time | Marks | Weighting | Content |
|---|---|---|---|---|---|
| Paper 1 | Computer Systems | 1 hour 45 min | 75 | 50% | Topics 1–6 (Computer Systems) |
| Paper 2 | Algorithms, Programming and Logic | 1 hour 45 min | 75 | 50% | Topics 7–10 (Algorithms, Programming and Logic) |
You will take two written exams. You are not allowed to use a calculator in either paper.
-
Paper 1: Computer Systems
- Time: 1 hour 45 minutes
- Weight: 50% of your total grade (75 marks)
- Format: Short-answer and structured questions based on topics 1 through 6.
-
Paper 2: Algorithms, Programming and Logic
- Time: 1 hour 45 minutes
- Weight: 50% of your total grade (75 marks)
- Format: Short-answer, structured questions, and a final 15-mark scenario-based question. Based on topics 7 through 10.
Assessment Objectives (AOs)
Section titled “Assessment Objectives (AOs)”Your work is assessed against three objectives:
| AO | Description | Weighting |
|---|---|---|
| AO1 | Demonstrate knowledge and understanding of computer science principles and concepts. | 40% |
| AO2 | Apply knowledge and understanding to given contexts, including analysis and design of problems. | 40% |
| AO3 | Provide solutions by evaluating systems, making reasoned judgements, and presenting conclusions. | 20% |
Paper 1: Computer Systems
Section titled “Paper 1: Computer Systems”This section is all about the theory behind how computers, networks, and software operate.
1. Data Representation
Section titled “1. Data Representation”Computers don’t understand words or pictures; they only understand binary (1s and 0s). In this topic, you will explore:
- Number Systems: How to convert between binary, denary (our normal base-10 numbers), and hexadecimal. You’ll learn how to add 8-bit binary integers, what an overflow error is, and how logical binary shifts work. You’ll also use two’s complement to represent negative numbers.
- Text, Sound, and Images: How computers use character sets like ASCII and Unicode to store text. You’ll discover how sound is converted into digital data using sample rates and resolutions, and how images are built using pixels, resolutions, and colour depth.
- Data Storage and Compression: How we measure file sizes (from bits and bytes to gibibytes and exbibytes). You will need to calculate the file sizes of images and sound files. You’ll also learn why data compression is important and the difference between lossy and lossless compression.
2. Data Transmission
Section titled “2. Data Transmission”When you send a message or download a file, data travels across networks. You will learn:
- Types of Transmission: How data is broken into packets (with headers and payloads) and sent using packet switching. You’ll explore different transmission methods: serial vs. parallel, and simplex, half-duplex, and full-duplex. You’ll also learn how USBs work.
- Error Detection: Data can get corrupted while travelling. You will learn how systems catch errors using parity checks, checksums, echo checks, ARQs, and check digits (like on a barcode).
- Encryption: How symmetric and asymmetric encryption protects your data from being read if it gets intercepted.
3. Hardware
Section titled “3. Hardware”Let’s look inside the machine. This topic covers the physical components of a computer system:
- Computer Architecture: The role of the Central Processing Unit (CPU) and microprocessors. You’ll learn the Von Neumann architecture (including registers like the PC, MAR, MDR, CIR, and ACC, and buses) and how it runs the Fetch-Decode-Execute cycle. You will also look at embedded systems.
- Input and Output Devices: How hardware like keyboards, microphones, 3D printers, and different types of touch screens work. You’ll also learn about various sensors (like temperature, light, and acoustic sensors).
- Data Storage: The difference between primary storage (RAM and ROM) and secondary storage (magnetic hard drives, optical CDs/DVDs, and solid-state flash memory). You will also learn about virtual memory and the pros and cons of cloud storage.
- Network Hardware: What MAC addresses and IP addresses (IPv4 and IPv6) are, and how Network Interface Cards (NICs) and routers connect you to the internet.
4. Software
Section titled “4. Software”Hardware is useless without software telling it what to do. You will cover:
- Software Types & Interrupts: The difference between application software (like your web browser) and system software (like your operating system). You will learn what an operating system actually does, and how hardware and software “interrupts” get the CPU’s attention.
- Programming Languages: The pros and cons of high-level languages (like Python or Java) and low-level languages (like assembly code). You’ll learn how compilers and interpreters translate your code into machine code, and how IDEs help you write and debug programs.
5. The Internet and its Uses
Section titled “5. The Internet and its Uses”This topic explores the global network that connects us all:
- The Internet vs. The World Wide Web: Understanding the difference between the internet (the infrastructure) and the WWW (the web pages). You’ll learn about URLs, HTTP/HTTPS, how web browsers work, and how cookies track your data online.
- Digital Currency: A basic look at how digital currencies work and how blockchain acts as a secure digital ledger.
- Cyber Security: The threats that exist online (like hacking, malware, phishing, pharming, and DDoS attacks) and how you can stay safe using firewalls, anti-malware, secure sockets layer (SSL), and two-step verification.
6. Automated and Emerging Technologies
Section titled “6. Automated and Emerging Technologies”The future of technology is here! You will learn about:
- Automated Systems: How sensors, microprocessors, and actuators work together to control systems in farming, transport, and industry without human help.
- Robotics: What makes a robot, how they are built, and the advantages and disadvantages of using them in medicine, manufacturing, and our homes.
- Artificial Intelligence: The basics of AI, including expert systems (which use rules to make decisions) and machine learning (where programs adapt based on data).
Paper 2: Algorithms, Programming and Logic
Section titled “Paper 2: Algorithms, Programming and Logic”This paper is all about your practical problem-solving skills. You will need to write and fix code using pseudocode.
7. Algorithm Design and Problem-Solving
Section titled “7. Algorithm Design and Problem-Solving”Before you write code, you need a plan. You will learn:
- The Program Development Life Cycle: The four stages of building software: analysis, design, coding, and testing.
- Decomposition: How to break a massive, complex problem down into smaller, easier-to-solve sub-systems.
- Algorithm Tools: How to plan out solutions using structure diagrams, flowcharts, and pseudocode.
- Standard Algorithms: You’ll need to know standard methods for finding things and sorting data, including linear searches, bubble sorts, totalling, and counting.
- Validation and Verification: Making sure user input is correct using validation (range checks, type checks, length checks) and verification (visual checks, double-entry).
- Testing: How to test your algorithms using trace tables and different types of test data:
- Normal data
- Abnormal data
- Extreme data
- Boundary data
8. Programming
Section titled “8. Programming”This is where you actually write the logic! For the exam, you will use pseudocode to answer questions.
- Programming Concepts: You will learn to use variables, constants, and basic data types (integers, strings, booleans). You’ll master core logic structures:
- Sequence (running code line by line)
- Selection (using
IFandCASEstatements) - Iteration (looping with
FOR,WHILE, andREPEAT UNTIL)
- Procedures and Functions: How to write reusable chunks of code and pass data into them using parameters.
- Arrays: How to use 1D and 2D arrays to store and read lists or grids of data.
- File Handling: How to open text files, read data from them, write data to them, and close them when you’re done.
9. Databases
Section titled “9. Databases”Most apps rely on databases to store massive amounts of information. You will learn:
- Single-Table Databases: How databases organize data into fields and records, and why a primary key is needed to keep track of every row.
- SQL Scripts: How to write Structured Query Language (SQL) to search and organize a database using commands like
SELECT,FROM,WHERE, andORDER BY.
10. Boolean Logic
Section titled “10. Boolean Logic”At the most basic level, computers make decisions using logic gates. You will learn:
- Logic Gates: The standard symbols and functions for
NOT,AND,OR,NAND,NOR, andXORgates. - Circuits and Truth Tables: You will be asked to read a problem statement and build a logic circuit, draw out its truth table, or write the logic expression for it.
Tip for Paper 2: At the end of Paper 2, you will face a 15-mark scenario question. For this specific question, you can choose to write your solution in pseudocode, Python, Visual Basic, or Java. Make sure you practice writing code from scratch to prepare for this!