To understand how a computer really works, IB Computer Science students must understand how data moves inside the system. Programs do not magically run in one place — data is constantly transferred between memory, registers, and the CPU using buses.
This topic builds directly on CPU components and the fetch–decode–execute cycle, and it frequently appears in Paper 1 system questions. Clear explanations are essential for full marks.
Memory: Where Programs and Data Are Stored
Main memory (RAM) is where:
- Programs currently in use are stored
- Data needed by those programs is held
RAM is much faster than secondary storage (like hard drives), but it is still slower than registers. This is why data is constantly moved from memory into the CPU during execution.
Key IB point:
- RAM stores instructions and data temporarily
- Data must be moved to the CPU before it can be processed
Registers: Ultra-Fast Storage Inside the CPU
Registers are very small memory locations inside the CPU.
They are used to:
- Hold the current instruction
- Store data being processed
- Store memory addresses
- Hold intermediate results
Registers are faster than RAM because they are located directly in the CPU and do not require external access.
Common registers IB students should know include:
- Program Counter (PC) – holds the address of the next instruction
- Instruction Register (IR) – holds the current instruction
- Memory Address Register (MAR) – stores memory addresses
- Memory Data Register (MDR) – stores data moving to or from memory
Buses: The Data Highways
Buses are communication pathways that carry signals between components.
There are three main buses students must understand:
Data Bus
- Transfers actual data
- Bi-directional (data can move both ways)
Address Bus
- Carries memory addresses
- One-directional (from CPU to memory)
Control Bus
- Carries control signals
- Includes signals like read, write, and clock pulses
IB exam questions often test whether students can distinguish what each bus carries.
How Data Moves During Program Execution
When a program runs:
- The address of the next instruction is placed on the address bus
- The instruction is transferred from memory via the data bus
- Control signals tell memory whether to read or write
- The instruction is stored in registers
- The CPU processes the instruction
This movement happens millions or billions of times per second.
Why Registers and Buses Improve Performance
Using registers and buses efficiently:
- Reduces delays
- Improves processing speed
- Allows parallel operations
This is why modern CPUs rely heavily on registers instead of constantly accessing RAM.
Common Student Mistakes
Students often:
- Confuse registers with RAM
- Forget the role of buses
- Mix up which bus carries what
- Give vague explanations of “data moving around”
Precise terminology is required in IB answers.
Final Thoughts
Registers, buses, and memory form the data movement system of a computer. Memory stores instructions and data, registers provide fast working space, and buses allow information to flow between components. Together, they make program execution possible.
Understanding this system helps students connect CPU operation, performance, and system design — exactly what IB Computer Science expects.
