AQA A-Level Computer Science 7517
Fundamentals of Programming
Fundamentals of Data Structures
Fundamentals of Algorithms
Theory of Computation
Fundamentals of Data Representation
Fundamentals of Computer Systems
Fundamentals of Computer Organisation and Architecture
Fundamentals of Communication and Networking
Consequences of Uses of Computing
Systematic Approach to Problem Solving
Fundamentals of Databases
Big Data
Fundamentals of Computer Systems
Classification of programming languages
- 2 things to know
- Paper 2
Overview
Recall questions on machine code and assembly language, what makes a language low level, and the advantages and drawbacks of low-level programming.
What you need to know
Answer each one before you reveal it.
Why has high-level programming replaced low-level programming for almost all applications?
Questions from this subtopic
Each one with the model answer underneath.
- 1
Into which two broad classes are programming languages divided?
Model answer
Low-level languages and high-level languages.
- 2
Which two languages are considered to be low level?
Model answer
Machine code and assembly language.
- 3
What makes a language low level?
Model answer
A low-level language is tied to the architecture of a particular processor. Its instructions correspond directly to the operations the hardware provides, it works with registers and memory addresses, and the programmer must express the task as the sequence of individual machine steps that carry it out.
- 4
Describe machine code.
Model answer
Machine code is the only language a processor can execute directly. Each instruction is a pattern of binary digits made up of an opcode, which says which operation to perform and in which addressing mode, and one or more operands, which give the value, memory address or register to use. It is specific to one processor family, and writing or reading it by hand is extremely slow and error prone, so it is often written out in hexadecimal for convenience.
- 5
Describe assembly language.
Model answer
Assembly language is a low-level language in which each machine code instruction is written as a short, memorable mnemonic, such as ADD, LDR or B, with its operands written as numbers, labels or register names. It is essentially a human-readable form of machine code, normally with one assembly instruction per machine instruction, and it is translated into machine code by an assembler. Like machine code it is specific to a particular processor's instruction set.
- 6
State the main advantage of assembly language over machine code.
Model answer
It is far easier for a person to write, read and debug, because mnemonics and labels are meaningful where binary patterns are not, and the assembler works out the addresses of labels so the programmer does not have to calculate them by hand. Both give the same control of the hardware, so this readability costs nothing in what the program can do.
Other ways to work this
The same content, four other ways.
What is inside Levo
Six ways to work the same material.
Every question in Fundamentals of Computer Systems, on a schedule.
Attempt a question from memory, write the correct version, then attempt it again. Levo records the jump between your first attempt and your last, and brings each question back on the day you are due to forget it.
Or £46 a year, about £3.83 a month. Cancel anytime.