Practice TestTake a test on your terms and definitions
Spaced RepetitionScientifically backed study method
Matching GameHow quick can you match all your cards?
FlashcardsStudy terms and definitions
1 / 33
There's no tags or description
Looks like no one added any tags here yet for you.
34 Terms
1
What is machine code?
A programming language that uses binary patterns of 0s and 1s which can be executed by a computer directly
New cards
2
Why is machine code machine-dependent?
It is based on the computer's instruction set (which is machine-dependent)
New cards
3
What is assembly language?
A programming language that uses mnemonics
New cards
4
Why is assembly language machine-dependent?
It has a one-to-one relationship with machine code (which is machine-dependent)
New cards
5
Which programming languages are low-level and why?
Machine code and assembly language as their code reflects how the hardware actually carries out the instruction and they're both based on the instruction set of the computer
New cards
6
What are high-level programming languages?
Programming languages that are English-like and machine-independent
New cards
7
What are imperative programming languages?
High-level languages where commands are given and then executed one-by-one to solve a problem or accomplish a task
New cards
8
What are the advantages of low-level languages over high-level languages?
-Can be more control over hardware (registers)
New cards
9
-Can be more memory efficient
New cards
10
-Can write more efficient, faster programs
New cards
11
What are the advantages of high-level languages over low-level languages?
-Machine independent
New cards
12
-Easier to understand
New cards
13
-Easier to debug - less error-prone
New cards
14
-Shorter, less lines of code - quicker to code
New cards
15
-Data structures, subroutines
New cards
16
-Indentation, whitespace and constants
New cards
17
Why must high-level languages and assembly language be converted into machine code?
The processor can only understand and execute machine code
New cards
18
What is source code?
Code written by a programmer in high-level or assembly language
New cards
19
What is object code?
The resulting, executable code of a compiler (normally in machine code)
New cards
20
What is an assembler?
A translator that converts assembly language into machine code
New cards
21
What is a compiler?
A translator that converts an entire high-level program into an object code executable (in machine code)
New cards
22
What is an interpreter?
A translator that executes high-level code line-by-line by calling an appropriate subroutine for each statement
New cards
23
What are the advantages of compilers over interpreters?
-Source code unneeded after compilation (more secure)
New cards
24
-Compiled programs don't normally need to be recompiled (doesn't need the compiler) but an interpreter needs to translate the code each time the program is run (interpreter is needed every time)
New cards
25
-Resultant object code executes faster than an interpreted program
New cards
26
What are the advantages of interpreters over compilers?
-To test small sections of code, no need for compilation
New cards
27
-No need for recompilation if there's an error
New cards
28
-Can run syntactically correct parts of a program while there are syntax errors elsewhere in the code
New cards
29
-Stops at the location of an error - easier to debug
New cards
30
-Program code can be interpreted on any computer (important for programs like websites)
New cards
31
What are compiled programs suitable for?
Programs that are frequently used or distributed
New cards
32
What are interpreted programs suitable for?
Websites, program testing or teaching code
New cards
33
What is bytecode?
An intermediate language that is the result of some compilers and is executed by an interpreter on a virtual machine
New cards
34
Why is bytecode machine-independent?
It can be interpreted on any computer with the correct virtual machine