Community resourceWorksheet
1CP2-P-8.2 High-level and low-level programming languages
Part 2 of 5 · 1CP2-P-8 · Environment, languages and intellectual property
A high-level language uses abstractions and syntax closer to human problem descriptions. A low-level language is closer to processor instructions and hardware organisation. These are relative levels; neither is automatically best for every task.
Students will:
- compare high-level and low-level language characteristics
- connect abstraction and hardware access to project requirements
- avoid absolute claims about speed or difficulty
- justify a language level for a stated task
Inside: 5 explanation cells, 1 fill-in-the-blanks cell, 3 multiple-choice questions and 3 written answers. 15 marks, about 45 minutes.
Series: 1CP2-P-8 · Environment, languages and intellectual property, part 2 of 5.
Shared by Coding PathwayVerified teacher
- 12 cells
- About 45 minutes
- CC BY-SA 4.0
- Shared 17 Aug 2026
Preview
The whole resource, exactly as a class sees it. Answers and marking are held back.
High-level and low-level programming languages
A high-level language uses abstractions and syntax closer to human problem descriptions. A low-level language is closer to processor instructions and hardware organisation. These are relative levels; neither is automatically best for every task.
1. Compare characteristics, not slogans
Machine code is the processor's binary instruction form. Assembly language uses mnemonic instructions closely related to one processor instruction set and needs an assembler to translate it into machine code. High-level languages usually support readable constructs, portability and faster development, but also require translation. Low-level languages can offer direct hardware control and close control of memory or processor operations, but are harder to read, write, debug and move between processor families. Performance depends on the program and translator, so ‘high level is always slow’ is not a sound claim.
- control
- portability
- speed
Which statement is accurate?
- AEvery high-level program executes more slowly
- BLow-level code is generally closer to machine instructions
- CLow-level languages need no processor knowledge
- DHigh-level code runs without translation
2. Apply the trade-off
For a small controller with strict timing and direct register access, low-level code may help control hardware precisely. For a school information system used on several computers, a high-level language may make development, maintenance and portability more important. A good answer names the requirement and links it to a characteristic.
Explain two reasons for choosing a high-level language to develop a cross-platform booking system.
Link each feature to the project.
Students type their answer here.
Explain one reason a developer might choose a low-level language for part of a device driver.
Connect hardware access to the driver task.
Students type their answer here.
A question asks for one characteristic of a low-level language. Which answer responds directly?
- AIt can be used to make a game
- BIts instructions map closely to processor operations
- CThe developer prefers it
- DIt has a logo
Improve the claim ‘high-level languages are better’ into a justified statement for one named context.
Use ‘because’ and a relevant requirement.
Students type their answer here.
Examination method
When asked for a characteristic, state the feature itself. When asked to explain a choice, connect that feature to the stated project requirement. Do not repeat information already supplied in the question.
Why must both high- and low-level source code ultimately relate to machine instructions?
- AThe CPU executes machine-code instructions
- BScreens only display binary
- CComments must be encrypted
- DKeyboards use assembly language
Route forward
You can select a language level from requirements. Next you will compare the two translation routes named in the specification: compilers and interpreters.