A1 Computer fundamentals

For the new IB Diploma Computer Science syllabus to start teaching in August 2025, and for first examinations in May 2027.

Unit and lesson overviews will be gradually published as developed.

Lesson 1: CPU components

A1.1.1 Describe the functions and interactions of the main CPU components.

  • Units: arithmetic logic unit (ALU), control unit (CU)
  • Registers: instruction register (IR), program counter (PC), memory address register (MAR), memory data register (MDR), accumulator (AC)
  • Buses: address, data, control
  • Processors: single core processor, multi-core processor, co-processors
  • A diagrammatic representation of the relationship between the specified CPU components

Lesson 2: Primary memory, secondary memory

A1.1.4 Explain the purposes of different types of primary memory.

  • Random-access memory (RAM), read only memory (ROM), cache (L1, L2, L3), registers
  • The interaction of the CPU with different types of memory to optimize performance
  • The relevance of the terms “cache miss” and “cache hit”

A1.1.7 Describe internal and external types of secondary memory storage.

  • Internal hard drives: solid state drive (SSD), hard disk drive (HDD), embedded multimedia cards (eMMCs)
  • External hard drives: SSD, HDD, optical drives, flash drives, memory cards, network attached storage (NAS)
  • The scenarios in which the various types of drive are used

Lesson 3: Fetch/decode/execute

A1.1.5 Describe the fetch, decode and execute cycle.

  • The basic operations a CPU performs to execute a single instruction in machine language
  • The interaction between memory and registers via the three buses: address, data, control

Lesson 4: GPU (HL)

A1.1.2 Describe the role of a GPU.

  • The architecture that allows graphics processing units (GPUs) to handle specific tasks and makes them suitable for complex computations
  • Real-world scenarios may include video games, artificial intelligence (AI), large simulations and other applications that require graphics rendering and machine learning.

A1.1.3 Explain the differences between the CPU and the GPU. (HL only)

  • Differences in their design philosophies, usage scenarios
  • Differences in their core architecture, processing power, memory access, power efficiency
  • CPUs and GPUs working together: task division, data sharing, coordinating execution

  • Video: How do Graphics Cards Work? Exploring GPU Architecture (28m)

Lesson 5: Pipelining (HL)

A1.1.6 Describe the process of pipelining in multi-core architectures. (HL only)

  • The instructions fetch, decode, execute
  • Write-back stages to improve the overall system performance in multi-core architectures
  • Overview of how cores in multi-core processors work independently and in parallel

Lesson 6: Compression

A1.1.8 Describe the concept of compression.

  • The differences between lossy compression methods and lossless compression methods
  • Run-length encoding and transform coding

Lesson 7: Cloud computing

A1.1.9 Describe the different types of services in cloud computing.

  • Services: software as a service (SaaS), platform as a service (PaaS), infrastructure as a service (IaaS)
  • The differences between the approaches of SaaS, PaaS, and IaaS in various real-world scenarios, recognizing that different degrees of control and flexibility influence resource management and resource availability

Lesson 8,9: Binary data

A1.2.1 Describe the principal methods of representing data.

  • The representation of integers in binary and hexadecimal
  • Conversion of binary and hexadecimal integers to decimal, and vice versa
  • Conversion of integers from binary to hexadecimal, and vice versa

A1.2.2 Explain how binary is used to store data.

  • The fundamentals of binary encoding and the impact on data storage and retrieval
  • The mechanisms by which data such as integers, strings, characters, images, audio and video are stored in binary form

Lesson 10,11,12,13: Logic gates, truth tables, logic diagrams

A1.2.3 Describe the purpose and use of logic gates.

  • The purpose and use of logic gates
  • The functions and applications of logic gates in computer systems
  • The role of logic gates in binary computing
  • Boolean operators: AND, OR, NOT, NAND, NOR, XOR, XNOR

A1.2.4 Construct and analyse truth tables.

  • Truth tables to predict the output of simple logic circuits
  • Truth tables to determine outputs from inputs for a problem description
  • Truth tables and their relationship to a Boolean expression, with inputs and outputs
  • Truth tables derived from logic diagrams to aid the simplification of logical expressions
  • Karnaugh maps and algebraic simplification to simplify output expressions

A.1.2.5 Construct logic diagrams.

  • Logic diagrams to demonstrate how logic gates are connected and interact in a circuit.
  • Use of standard gate symbols for AND, OR, NOT, NAND, NOR, XOR and XNOR gates
  • Inputs processed diagrammatically to produce outputs
  • Combinations of these gates to perform more complex logical operations
  • Boolean algebra rules to simplify complex logic diagrams and expressions

Lesson 14,15,16: Operating systems

A1.3.1 Describe the role of operating systems.

  • Operating systems abstract hardware complexities to manage system resources

A1.3.2 Describe the functions of an operating system.

  • Maintaining system integrity while running operating systems’ background operations
  • Memory management, file system, device management, scheduling, security, accounting, graphical user interface (GUI), virtualization, networking

A1.3.3 Compare different approaches to scheduling.

  • Managing the execution of processes by allocating CPU time to optimize system performance
  • First-come first-served, round robin, multilevel queue scheduling, priority scheduling

A1.3.4 Evaluate the use of polling and interrupt handling.

  • Event frequency, CPU processing overheads, power source (battery or mains), event predictability, controlled latency, security concerns
  • Real-world scenarios may include keyboard and mouse inputs, network communications, disk input/ output operations, embedded systems, real-time systems.

A1.3.5 Explain the role of the operating system in managing multitasking and resource allocation. (HL only)

  • The challenges of multitasking and resource allocation, including task scheduling, resource contention and deadlock

Lesson 17,18: Control systems

A1.3.6 Describe the use of the control system components. (HL only)

  • The input, process, output, and feedback mechanism (open-loop, closed-loop)
  • Controller, sensors, actuators, transducers and control algorithm

A1.3.7 Explain the use of control systems in a range of real-world applications. (HL only)

  • Examples may include autonomous vehicles, home thermostats, automatic elevator controllers, automatic washing machines, traffic signal control systems, irrigation control systems, home security systems, automatic doors.

Lesson 19: Translation

A1.4 Translation (HL only)

A1.4.1 Evaluate the translation processes of interpreters and compilers.

  • The mechanics and use-cases of each translation approach
  • The difference in error detection, translation time, portability and applicability for different translation processes, including just-in-time compilation (JIT) and bytecode interpreters
  • Example scenarios where the translation method should be considered must include rapid development and testing, performance-critical applications and cross-platform development.

Lesson 20: Exam practice questions

Lesson 21: Assessment


Copyright © Paul Baumgarten.