Community resourceWorksheet
OCR H446 1.1.1 Decode, execute and branching
Part 5 of 12 · H446 1.1.1 · Structure and function of the processor
OCR H446 1.1.1: Decode, execute and branching. Students learn to distinguish decode from execute and predict how arithmetic, comparison and branch instructions change processor state.
Students will:
- follow decode and execute stages
- track the effect of instructions on processor state
- explain how branching changes instruction flow
Inside: 5 explanation cells, 1 multiple-choice question, 2 fill-in-the-blanks cells and 2 written answers. 16 marks, about 20 to 30 minutes.
Series: H446 1.1.1 · Structure and function of the processor, part 5 of 12.
Shared by Coding PathwayVerified teacher
- 10 cells
- About 30 minutes
- CC BY-SA 4.0
- Shared 31 Aug 2026
- Updated 3 Sept 2026
Preview
The whole resource, exactly as a class sees it. Answers and marking are held back.
Decode, execute and branching
After fetching an instruction, the processor must interpret it and carry out the required operation. The execute stage is not one fixed transfer: it changes according to the instruction.
By the end, you will be able to
- distinguish decode from execute;
- predict register effects for arithmetic, store and branch instructions;
- explain how a branch changes the next fetch.
You will be given each low-level instruction's meaning. Remembering an assembly mnemonic is not the purpose of this sheet.
From binary pattern to action
The instruction in the Current Instruction Register (CIR) contains an opcode, which identifies the operation, and may contain an operand, such as data or an address used by that operation. During decode, the Control Unit (CU) interprets these parts and prepares the required control signals and data paths. During execute, the action depends on the opcode:
| Instruction type | Modelled execute effect |
|---|---|
| arithmetic | the Arithmetic Logic Unit operates and the Accumulator holds the result |
| store | the target address is held in the Memory Address Register, the value passes through the Memory Data Register, and a write signal is sent |
| branch | the Program Counter receives the target address if the condition is satisfied |
A branch changes control flow by changing the Program Counter (PC). The PC does not merely count completed instructions.
Worked conditional branch
A supplied instruction means branch to address 480 if the last result was zero. After fetch, the PC holds the next sequential address, 206.
- Decode identifies the branch operation, the zero condition and target 480.
- During execute, the relevant zero condition is tested.
- If it is true, PC becomes 480. If it is false, PC remains 206.
- The next fetch begins at whichever address the PC now holds.
This models the processor effect without requiring mnemonic recall.
When is a taken branch target normally written to the PC?
- ABefore the branch instruction is fetched
- BDuring execution of the branch instruction
- CWhenever the MDR contains any data
- DOnly after the program ends
- control unit
- ALU
- PC
- MDR
A supplied instruction means ‘add the value at address 90 to the Accumulator’. Distinguish its decode and execute stages.
State what is interpreted first, then what action and register result follow.
Students type their answer here.
A supplied instruction means ‘branch to address 600 if the last result was zero’. After fetch, PC = 241. Explain the final PC value if the zero condition is (a) true and (b) false.
Give both values and link each to branch execution.
Students type their answer here.
Checkpoint
Complete the cycle and instruction effects from memory. There is no answer bank.
Consolidate your understanding
Check that you can separate decoding from execution and predict both taken and not-taken branch states.