High and Low-level Programming Languages Flashcards
What is classed as a low-level programming language?
A language which is fairly simple and provides little change from a computer’s instruction set architecture (e.g. machine code and assembly code).
What is machine code?
Binary code.
What is assembly code?
A low level code, which is a different way of writing machine code (but uses English).
What is classed as a high-level programming language?
Programming languages which are more sophisticated which will do more things (like memory management). These are easier to write and often work cross-platform on different CPUs.
Give 2 examples of high-level programming languages.
C++ and Python.
Give the names of the 3 main language translators.
The assembler, the compiler and the interpreter.
What does the assembler do?
It translates assembly language into machine code. It consists of mnemonics for machine op codes so assemblers perform a 1:1 translated from mnemonic to a direct instruction.
What does the compiler do?
It translates high-level code into a low-level language. It converts all the code at once into machine code usually to make it executable.
What does the interpreter do?
Executes other programs line-by-line. It’s slower, but easier to debug and create multi-platform code. It also translates high-level to low-level code.
Give the steps high-level code goes through to be run.
Define algorithm.
A logical step-by-step problem-solving procedure for solving a mathematical problem in a finite number of steps, often involving repetition of the same basic operation.
Define imperative programming language.
An imperative language uses a sequence of statements to determine how to reach a certain goal. These statements are said to change the state of the program as each one is executed in turn.