Languages Flashcards
Definition of a High Level Language:
A programming language used for coding which is closer to English and easier to learn.
Definition of a Low Level Language:
A programming language used for coding which operates close to the hardware of a computer and is less like English.
Definition of Machine Code:
A low level language using binary, uses one instruction per line.
Definition of Assembly Code:
Similar to machine code, a low level language using mnemonics, each line is translated into one line of machine code, often used in embedded systems.
Definition of a Compiler.
A Compiler is a translator that converts the entire source code into object code which can then be run as an executable file.
What is an Assembler?
A compiler for turning assembly code into machine code.
Definition of an Interpreter.
An Interpreter is a translator that reads and executes source code line by line, without converting it into machine code first.
Give 2 Advantages and 1 Disadvantage of a Compiler:
Advantages: Faster, Code only needs to be compiled once, Easier to share
Disadvantages: Hard to debug
Give 2 Advantages and 1 Disadvantage of an Interpreter:
Advantages: Easier to debug, Multiplatform
Disadvantages: Slower, Code needs to be interpreted every time it is run
What is Bytecode?
A type of object code which high level languages can be compiled into.
Why is Bytecode used?
It is a compromise between a Compiler and Interpreter, since it needs both to run, and therefore is more secure and can be used across platforms.