← IGCSE Computer Science Paper 1

Accumulator (ACC)

A register in the CPU that holds data being worked on and the results of ALU calculations, storing intermediate results before they are saved back to memory or output.

Understanding Accumulator (ACC) in IGCSE Computer Science Paper 1

What it does: The first result (8) is kept in ACC so the next ALU calculation can use it, which is how an intermediate result works. A store instruction copies the final value from the accumulator back to RAM, so the result is not lost. The accumulator holds data being worked on and the results of ALU calculations. The PC holds the address of the next instruction. The accumulator is a register, and registers are small, very fast storage locations inside the CPU. Decoding instructions and sending control signals is the job of the control unit, not the accumulator. The ACC stores data and calculation results, not memory addresses of instructions, which is the PC's job.

Common mistakes: The ALU adds 5 to the 7 in the ACC, so the ACC now holds 12, not 75. The line should be ACC NOW HOLDS 12. The result of the calculation is held in the accumulator, so it is the ACC that is stored back to memory. The line should be STORE ACC TO address 50.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 218–227) and word search (Modules 218–239).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
Which register holds the results of calculations done by the ALU?
Accumulator (ACC)Program counter (PC)
Matches
The ACC fetches instructions from RAM and decodes them
↓
The accumulator does not fetch or decode instructions. It holds data and ALU results. The CIR holds the current instruction and the control unit decodes it.
Applying
Meanings
Term
Accumulator (ACC)
Meaning
A register in the CPU that holds data being worked on and the results of ALU calculations, storing intermediate results before they are saved back to memory or output.
Practice
ACC ← 12
Testing
Gaps
← 8 + 2
Check Answer
Spots
2ADD 5 TO ACC
3ACC NOW HOLDS 75

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Flamingo' badge — Balanced Coder, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. Which register holds the results of calculations done by the ALU?
A. Accumulator (ACC) ✓
B. Program counter (PC)
The accumulator holds data being worked on and the results of ALU calculations. The PC holds the address of the next instruction.
2. The accumulator is found in the...
A. Hard disk drive
B. CPU ✓
The accumulator is a register, and registers are small, very fast storage locations inside the CPU.
3. The ALU adds 5 and 3. Where is the result of 8 held straight away?
A. In the accumulator ✓
B. In the address bus
The ALU puts the result of its calculation into the accumulator. Buses carry signals between components, they do not store data.
4. True or false: The accumulator can store an intermediate result part way through a longer calculation.
A. True ✓
B. False
For a calculation such as (2 + 3) x 4, the result of 2 + 3 can stay in the accumulator while the next step uses it.
5. Which statement about the accumulator is correct?
A. It holds the address of the next instruction to fetch
B. It is used by the ALU when it performs calculations ✓
The second statement describes the program counter. The accumulator works with the ALU by holding data and results.

Match the Pairs

ACC → The accumulator, a CPU register that holds the data being worked on and the results of ALU calculations
ACC ← ACC + MDR → The ALU adds the value fetched from memory to the value in the accumulator, and the new result replaces the old value in ACC
The accumulator stores an intermediate result while a calculation is still in progress → ACC ← 5 + 3 (then ACC ← ACC * 2)
After the ALU finishes, the result in the accumulator is saved back to memory or output → STORE 200 (copies ACC to address 200)
The ACC fetches instructions from RAM and decodes them → The accumulator does not fetch or decode instructions. It holds data and ALU results. The CIR holds the current instruction and the control unit decodes it.
The ACC holds the address of the next instruction to run → The program counter (PC) holds the address of the next instruction. The accumulator holds data and results of ALU calculations.

Key Term

Accumulator (ACC)
A register in the CPU that holds data being worked on and the results of ALU calculations, storing intermediate results before they are saved back to memory or output.

Fill in the Blanks

1. ACC ← 8 + 2
Hint: Type the abbreviation of the register that receives the result of the ALU's calculation.
2. LDA 20 ADD 21 STA 22
Hint: Type the instruction name that saves the accumulator's value back into memory address 22.
3. ACC ← 9 - 4 OUTPUT ACC
Hint: Type the register whose result is sent to the output device.
4. LDA 20 ADD 21 STA 22
Hint: Type the instruction name that loads a value from memory into the accumulator.
5. ACC ← 6 ACC ← ACC * 4 STA 30
Hint: Type the operator that makes the ALU multiply the stored intermediate result by 4.

Spot the Error

Question 1
A LOAD 7 INTO ACC
B ADD 5 TO ACC
C ACC NOW HOLDS 75
Line C — The ALU adds 5 to the 7 in the ACC, so the ACC now holds 12, not 75. The line should be ACC NOW HOLDS 12.
Question 2
A ACC ← 10
B ACC ← ACC - 4
C // ACC now holds 6
D STORE PC TO address 50
Line D — The result of the calculation is held in the accumulator, so it is the ACC that is stored back to memory. The line should be STORE ACC TO address 50.
Question 3
A ACC ← 4
B ACC ← ACC + 3
C // ACC now holds 12
D OUTPUT ACC
Line B — The comment says the ACC holds 12, which is 4 * 3. Adding 3 would give 7. The ALU should multiply: ACC ← ACC * 3.
Question 4
A LDA 100 // RAM to ACC
B ADD 101 // ALU adds to ACC
C STA 102 // RAM to ACC
Line C — STA stores the accumulator's result back into memory. It does not load from RAM into the ACC. The comment should say ACC to RAM.
Question 5
A LOAD price INTO ACC
B ADD tax TO MAR
C STORE ACC IN total
Line B — The ALU works on the data held in the ACC and leaves the result there. The MAR only holds addresses. The line should be ADD tax TO ACC.

Student with a class code? Join your class →