AQA A-Level Computer Science AS Paper 2, June 2025: Question 6
9 marks · Easy difficulty · Short Answer
Define computer hardware and software, describe differences between system and application software, state advantages and types of low-level languages, and explain the role of an assembler.
Practise this questionQuestion
Question text
06.1 Describe what is meant by the terms computer hardware and computer software.
[2 marks]
Computer hardware
Computer software
06.2 Describe the difference between system software and application software.
[2 marks]
06.3 State two advantages of using a low-level language to write software.
[2 marks]
06.4 State a type of low-level language other than assembly language.
[1 mark]
06.5 Describe the role of an assembler and explain why an assembler is needed.
[2 marks]
Mark scheme
Show the mark scheme
Qu Pt Marking Guidance Marks
06 1 Marks are for AO1 (knowledge) 2
Hardware is the physical/electronic components (of the system);
Software is the programs/applications/code/instructions (that are run on the
hardware);
Qu Pt Marking Guidance Marks
06 2 Marks are for AO1 (knowledge) 2
System software controls/manages the system // system software helps a
computer run // system software performs tasks that are machine-oriented;
A. Computer/hardware for system
Layer(s) of software that abstract the user from how the computer works;
A. software that hides complexity of hardware from user
A. software that provides a virtual machine
Application software performs (specific) tasks for the user/user-oriented tasks;
Qu Pt Marking Guidance Marks
06 3 Marks are for AO1 (understanding) 2
Programs written in a low-level language (usually) run/execute faster / take less
time to run/execute;
R. references to increased speed relating to faster/no translation
Programs written in machine code require no translation/can be directly executed;
Programs written in a low-level language allow more direct/precise control of
underlying hardware resources
A. by example such as can specify which registers/memory locations to use;
Programs written in a low-level language use less memory // are more memory
efficient;
Max 2 – – –
Qu Pt Marking Guidance Marks
1206 4 Mark is for AO1 (knowledge) 1
Machine code;
A. Object code/Intermediate code/byte code
Qu Pt Marking Guidance Marks
06 5 Marks are for AO1 (understanding) 2
Translates assembly code/language into machine/executable code;
Computers cannot execute assembly code/language directly // computers can only
execute machine/object code;
Max 2
How to answer it
Hardware, Software & Low-Level Languages
What this question tests
This question assesses fundamental systems architecture and systems software concepts from Topic 3 (Fundamentals of Computer Systems) and Topic 7 (Software Development):
- Accurate definitions of computer hardware and software.
- Distinguishing functional roles between system software and application software.
- Key execution and control benefits of low-level programming languages.
- Classification of low-level languages (identifying machine code).
- The precise translation role and mechanical necessity of an assembler.
Hardware vs Software Definitions
Describe what is meant by the terms computer hardware and computer software. [2 marks]
✅ Mark Scheme Answers
- Computer hardware: The physical or electronic components (of a computer system). [1 mark]
- Computer software: The programs, applications, code, or instructions (that run on the hardware). [1 mark]
🧠 Exam Technique
- Never use the word you are defining in your answer (e.g. do not say "hardware is hard things").
- Use the formal syllabus keywords: physical/electronic components vs sequences of instructions/programs.
- Stating "software tells the hardware what to do" is accepted only if you mention that it is code/instructions.
❌ Common Errors & Misconceptions
- Giving examples instead of definitions: Writing "Hardware is a keyboard and CPU; software is Word" scores 0 marks. You must define the category.
- Informal language: Defining software purely as "the stuff you cannot touch" is considered imprecise at AS level and risks zero credit.
System Software vs Application Software
Describe the difference between system software and application software. [2 marks]
✅ Model Contrast
- System software: Controls/manages the hardware and system resources // performs machine-oriented tasks // provides an abstract layer/virtual machine that hides hardware complexity. [1 mark]
- Application software: Performs user-oriented tasks // enables the user to perform specific non-computer tasks (e.g., writing a letter, browsing the web). [1 mark]
💡 Key Knowledge
Remember the fundamental divide in purpose:
- System-oriented: Works for the machine (OS, device drivers, utilities).
- User-oriented: Works for the human (word processors, spreadsheets, games).
❌ Common Errors
- One-sided answers: Describing system software well but forgetting to clearly contrast it with what application software does.
- Vague utility definitions: Saying "application software is downloaded by the user" is not universally true (pre-installed apps exist) and misses the functional purpose.
Advantages of Low-Level Languages
State two advantages of using a low-level language to write software. [2 marks]
✅ Any Two Distinct Advantages
- Programs usually run/execute faster (take less execution time). [1 mark]
- Allows direct/precise control of underlying hardware (e.g., directly addressing specific CPU registers or memory addresses). [1 mark]
- Programs use less primary memory (RAM) / are more memory efficient. [1 mark]
- Programs written directly in machine code require no translation. [1 mark]
❌ Examiner Pitfalls (Beware the Reject Rule!)
- The "Fast Translation" Trap: The mark scheme explicitly states: "R. references to increased speed relating to faster/no translation" for assembly. Assembly still needs translation! Execution speed comes from optimal machine instructions, not translation speed.
- Vague claims: Stating just "It is smaller" or "It is faster" without qualifying (e.g. execution time or file/memory size).
🧠 Examiner Tip: Typical Embedded Use Cases
When asked why someone writes in low-level languages (like assembly), think about device drivers or embedded microcontrollers: every clock cycle and every byte of memory counts, and you need to talk straight to hardware pins and registers.
Low-Level Language Classification
State a type of low-level language other than assembly language. [1 mark]
✅ Primary Accepted Answer
Machine code
Also allowed: Object code, Intermediate code, Bytecode.
❌ What Will Score Zero
- Naming high-level languages like C, Python, or Java (C is high-level despite offering pointer access!).
- Repeating Assembly (the question explicitly asks for a type other than assembly).
- Naming translator types (e.g., compiler).
The Role & Purpose of an Assembler
Describe the role of an assembler and explain why an assembler is needed. [2 marks]
✅ Complete Two-Part Answer
- Role: Translates assembly language (mnemonics / source code) into machine code / object code / executable binary. [1 mark]
- Why it is needed: The CPU/hardware cannot execute assembly code directly // processors can only execute binary machine code instructions. [1 mark]
🧠 Exam Technique: Two-Part Command
Notice the question asks to describe the role AND explain why it is needed:
- Point 1: What does it convert from and to? ( Assembly → Machine Code ).
- Point 2: Why can't the computer run it without this? (CPUs only understand 1s and 0s / machine code).
❌ Common Misconceptions
- Confusing Assembler with Compiler/Interpreter: Saying it converts "high-level source code" to machine code loses the first mark. High-level is for compilers/interpreters; assemblers are strictly for assembly code.
- Vague execution points: Writing "so the computer understands it" without specifying that the CPU can only execute machine code.
Topics
4.6 Fundamentals of computer systems · 4.6.1 Hardware and software · 4.6.2 Classification of programming languages · 4.6.3 Types of program translator
Question and mark scheme from the AQA A-Level Computer Science examination, AS Paper 2, June 2025. QuestionVault is an independent revision resource; questions remain the copyright of the awarding body.