Cambridge A-Level Computer Science Articles
The following is a list of articles detailing subject matter featured in the Cambridge A-Level and AS-Level secondary school computer science courses. The articles are organised under section headings consistent with the Cambridge computer science syllabus number 9618 for exam years 2027, 2028 and 2029.
AS-Level Articles
1.1 - Data Representation
- Why do computers use binary numbers?
- Two’s complement is a method of representing negative numbers in binary.
- Binary Coded Decimal (BCD) is an alternative method of representing numbers in binary.
1.2 - Multimedia
Bitmap graphics are a method of representing images in a computer memory, storing colour information for each pixel on the display. This technique excels at representing complex, multicoloured images like photographs. In this article we:
- Show understanding of how data for a bitmapped image is encoded
- Perform calculations to estimate the file size for a bitmap image
- Explain the terms: colour depth and bit depth
Vector graphics store image instructions rather than pixel data, allowing for scalability without loss of quality. They use a display list of shapes with properties like position, size, and colour. This article covers:
- How data for a vector graphic are encoded
- The use of a bitmap image or a vector graphic for a given task
1.3 - Compression
Data compression is a process that makes files smaller, which has the benefit that they take up less space on disk or take less time to transmit over a network. This article discusses:
- Lossy and lossless compression and justify the use of a method in a given situation
- How a text file, bitmap image, and sound files can be compressed
2 - Networks
-
This article discusses differences between a LAN and a WAN. A local area network serves a home, an office or otherwise a small group of buildings that are physically close to each other. A wide area network serves a town, a country or even the world.
-
Differences between the client-server model and peer-to-peer networks are explained here. The advantages and disadvantages of each model of data distribution are discussed.
-
Thin client and thick client operation is mainly about describing where software is physically running in a system. When choosing software there are often two options. You can download software (an app) and install it directly on your computer or you can use software that is available online, such as through a web browser.
-
This article discusses the benefits and drawbacks of wireless versus wired mediums of communication. The concept of bandwidth is mentioned and the relative benefits of copper and fibre optic cables. In this article satellite and ground based wireless is compared.
3.1 - Hardware
- The differences between SRAM and DRAM are discussed and why each type of memory is selected for a specific application.
3.2 - Logic Gates and Logic Circuits
- The basic logic gates of NOT, AND, OR, NAND, NOR and XOR are discussed in this article and truth tables are introduced.
4.1 - Central Processing Unit (CPU) Architecture
-
The Von Neumann model is a computer design published by Hungarian mathematician John von Neumann that still forms the basis of the great majority of computer systems today. Special purpose registers are described including the Program Counter, Memory Data Register, Memory Address Register, The Accumulator, Index Register, Status Register and Current Instruction Register.
-
This article introduces Register Transfer Notation including the fetch/execute cycle with an example.
4.2 - Assembly Language
- This article explains the relationship between assembly language and machine code
- This article covers assembly language addressing modes including immediate, direct, indirect, indexed and relative.
5.1 - Operating Systems
This article explains why a computer system requires an Operating System, including:
- Abstraction layers
- The benefits of multitasking
- The use of libraries
5.2 - Language Translators
- The difference between compilers and interpreters are explained in this article.
8.1 - Database Concepts
- This article introduces database concepts including an explanation of why databases are useful versus flat files, relational database features, terminology and normalisation.
9.2 - Algorithms
- Pseudo code is a method of describing algorithms in a generic way.
10.4 - Introduction to Abstract Data Types (ADT)
- Linked list data structures allow us to more easily insert and remove items from lists that with arrays.
A-Level Articles
13.2 - File organisation and access
- This article covers file methods of access including serial, sequential and random file access
- Hashing algorithms and hash codes have applications in security, searching databases and ensuring data integrity.
13.3 - Floating-point numbers, representation and manipulation
This article describes the format of binary floating-point real numbers (in IEEE 754), including:
- The consequences of a binary representation only being an approximation to the real number it represents
- The benefits of increased precision
A method by which decimal numbers may be converted into IEEE 754 is explained here.
14.1 Protocols
- An explanation of protocols and why they are required to help computers communicate, including a brief summary of several popular protocols.
- The TCP/IP protocol underpins communication on the internet.
14.2 - Circuit switching, packet switching
- The difference between circuit switching and packet switching is explained in detail in this article. Packet switching enables us to more efficiently share a communication resource whereas circuit switches monopolises the resource.
15.1 - Processors, Parallel Processing and Virtual Machines
- The differences between RISC and CISC CPUs are described in this article.
- This article explains CPU architectural choices including SIMD, MISD, MIMD and SISD.
- This article covers virtual machines.
15.2 - Boolean Algebra and Logic Circuits
- This article develops an understanding of boolean algebra and how it applies to logic gates.
- This article explores half adders and full adders to show how addition can be performed with logic gates.
- Latches and flip-flops are electronic circuits made from logic gates that have a memory effect. The SR and JK variants are discussed.
16.2 - Translation Software
- Backus-Naur form (BNF) is a language for describing the rules of programming languages.
- Reverse Polish is a notation for writing mathemtatical expressions for easier processing by computers.
19.1 - Algorithms
- This article covers Abstract Data Types (ADTs).
- The binary search algorithm helps us to search lists more quickly than a linear search.
- Binary tree data structures maintains items, with a known ordering which enables faster searching.
- The bubble sort algorithm is a simple sorting algortithm but it does not deliver the best performance. This article includes a Python implementation of a bubble sort.
- The insertion sort is described here with a Python implementation.
20.1 - Programming Paradigms
- Imperative and declarative programming are two different programming language styles or paradigms.
- The Object Oriented Programming paradigm is introduced here.
20.2 - File Processing and Exception Handling
- This article discusses the need for exception handling to deal with errors in programs.
Image Credit: Person using computer: Almonroth. Content is provided independently in the hope that it may be useful and is not affiliated with the Cambridge examinations board.