What Happens After Fetch?
Fetch has brought the instruction from RAM into the CPU. The instruction is now held in the CIR.
But simply having an instruction is not enough. Before the CPU can carry it out, the CPU must first work out what the instruction means.
That gives us the final two stages of the Fetch–Decode–Execute cycle:
Keeping those two ideas separate is one of the most important things to understand in this lesson.
Check Your Understanding 1
After Fetch is complete, which register holds the current instruction?
Check the answer
The CIR — Current Instruction Register.
Decode — Understand the Instruction
During Decode, the instruction is held in the Current Instruction Register (CIR).
The Control Unit (CU) reads the instruction and works out what it means.
The Control Unit does not need to guess. The CPU has an instruction set containing the machine-code commands that it understands.
The Control Unit uses this instruction set to identify the instruction and determine what needs to happen next.
Think of the Instruction Set as a Codebook
A useful mental model is to imagine that the CPU has been given a coded instruction.
The code is only useful if the CPU knows what that code means. The instruction set acts like the CPU's codebook: it defines the commands that the processor can understand.
↓
Control Unit
↓
Instruction Set
↓
Meaning understood
Check Your Understanding 2
Which CPU component uses the instruction set during Decode?
Reveal the answer
The Control Unit.
Opcode and Operand
When an instruction is decoded, it can be understood in terms of two useful parts: the opcode and the operand.
| Part | Meaning |
|---|---|
| Opcode | The operation or action that needs to be performed. |
| Operand | The data, value or address involved in the instruction. |
Operand = what to use.
For example, consider the simplified instruction:
In this example, ADD describes the operation. The other part identifies what is involved in that operation.
Opcode or Operand?
In the simplified instruction ADD 25, which part tells the CPU what action to perform?
Reveal the answer
ADD is the opcode because it identifies the operation to perform.
What Decode Does — and Does Not Do
Decode is about understanding the current instruction.
At this point, the CPU has not yet carried out the requested action.
| Decode | Execute |
|---|---|
| Works out what the instruction means. | Carries out the instruction. |
| Uses the Control Unit and instruction set. | Uses the appropriate CPU components for the action. |
| Identifies what needs to happen. | Makes it happen. |
Decode is where the instruction is understood. If an arithmetic or logical operation is required, the ALU may perform it during Execute.
Check Your Understanding 3
Has the instruction been carried out when Decode finishes?
Reveal the answer
No. Decode determines what the instruction means. The action happens during Execute.
The CPU now understands the instruction. The next job is to carry it out.
Execute — Carry Out the Instruction
The CPU now knows what the instruction means. During the Execute stage, that decoded instruction is finally carried out.
The Control Unit sends control signals to the appropriate components so that the required action can happen.
↓
Control Unit sends signals
↓
Required action happens
Check Your Understanding 4
Which CPU component sends the control signals needed to coordinate the Execute stage?
Reveal the answer
The Control Unit.
The ALU Performs Arithmetic and Logic
Some instructions require a calculation or a logical operation.
When this happens, the Arithmetic Logic Unit (ALU) performs the required arithmetic or logical operation.
↓
ALU performs the operation
For example, if the decoded instruction requires two values to be added, the ALU performs the addition.
The Accumulator Stores the Result
Once the ALU has performed an operation, the result can be stored in the Accumulator (ACC).
↓
Result
↓
ACC stores result
This distinction is extremely important because students often mix up the ALU and the accumulator.
| Component | Job |
|---|---|
| ALU | Performs arithmetic and logical operations. |
| ACC | Stores the result of those operations. |
ALU or ACC?
A CPU instruction causes two values to be added. Which component performs the addition, and where can the result be stored?
Reveal the answer
The ALU performs the addition. The result can be stored in the ACC.
Execute Does Not Always Mean Calculate
Not every instruction requires the ALU to perform a calculation.
An instruction might instead require the CPU to load data, store data, compare values, or move information between different parts of the system.
The Control Unit sends the appropriate control signals so that the required action can take place.
calculate
compare
load data
store data
move data
Data Can Move During Execute
Some instructions involve transferring data rather than performing a calculation.
For example, data may need to move between RAM, the MDR and the CPU.
The Control Unit coordinates these movements by sending the appropriate control signals.
Check Your Understanding 5
Does every Execute stage require the ALU to perform a calculation?
Reveal the answer
No. Some instructions calculate or compare, while others load, store or move data.
Put Decode and Execute Together
We can now connect the two stages without mixing up their jobs.
↓
Control Unit decodes instruction
↓
Instruction set identifies meaning
↓
Opcode + Operand understood
↓
Control Unit sends control signals
↓
Instruction is executed
Try It Before You Reveal It
Retrieval practice is much more useful than simply reading the same explanation again.
Decode Challenge
Complete the sequence:
Reveal the missing component
The missing component is the Control Unit.
Execute Challenge
Complete the statement:
ACC = ?
Reveal the answer
ALU performs arithmetic and logical operations.
ACC stores the result.
Decode or Execute?
Decide which stage each statement belongs to:
- The Control Unit works out what the instruction means.
- The ALU performs an arithmetic operation.
- The instruction set is used to identify the command.
- The Control Unit sends signals so the required action happens.
Check your answers
- Decode
- Execute
- Decode
- Execute
The Full Fetch–Decode–Execute Story
We can now reconnect everything from all three lessons in the CPU mini-series.
| Stage | Big idea |
|---|---|
| Fetch | Get the next instruction from memory. |
| Decode | Work out what the instruction means. |
| Execute | Carry out the instruction. |
PC → MAR → RAM → MDR → CIR
DECODE
CIR → Control Unit → Instruction Set
EXECUTE
Control signals → required action
After Execute, the CPU can continue with the next instruction and the Fetch–Decode–Execute cycle repeats.
Exam Focus — Keep the Stages Separate
One of the easiest ways to lose marks is to describe the correct CPU action in the wrong stage.
Keep these three ideas clear:
- Fetch: bring the instruction into the CPU.
- Decode: the Control Unit works out what the instruction means.
- Execute: the Control Unit coordinates the components needed to carry out the instruction.
If the question asks specifically about Decode, do not start describing ALU calculations. If it asks specifically about Execute, explain what happens when the decoded instruction is carried out.
Common Decode & Execute Mistakes
The Control Unit decodes the instruction.
Decode works out what the instruction means. Execute carries it out.
Opcode identifies the operation. Operand identifies the data, value or address involved.
The ALU performs arithmetic and logical operations. The ACC stores the result.
Some instructions involve calculations or logic, while others involve loading, storing or moving data.
The Control Unit sends control signals to coordinate the components required to carry out the instruction.
Quick Quiz
- Which register holds the current instruction after Fetch?
- Which CPU component decodes the instruction?
- What is an instruction set?
- What is the difference between an opcode and an operand?
- What is the main purpose of the Execute stage?
- Which component performs arithmetic and logical operations?
- What is the role of the accumulator?
- Does every instruction require an ALU calculation?
- What does the Control Unit do during Execute?
- Name the three stages of the FDE cycle in order.
Quick Quiz Answers
Reveal all answers
- The CIR.
- The Control Unit.
- The list of machine-code commands that the CPU can process.
- The opcode identifies the operation; the operand identifies the data, value or address involved.
- To carry out the decoded instruction.
- The ALU.
- The ACC stores the result of arithmetic or logical operations.
- No. Some instructions load, store or move data instead.
- It sends control signals to coordinate the components needed to carry out the instruction.
- Fetch → Decode → Execute.
Final Summary
CIR
Holds the current instruction after Fetch.
Control Unit
Decodes the instruction and sends control signals.
Instruction Set
Contains the commands that the CPU can process.
Opcode & Operand
Opcode = operation. Operand = data, value or address involved.
ALU
Performs arithmetic and logical operations when required.
ACC
Stores the result of ALU operations.