High-Level Language Low-Level Language
Compiler Interpreter
Assembly Language Machine Language
Abstraction Portability

 

A programming language that is closer to machine language and is harder to understand and use compared to high-level languages. A programming language that is closer to human language and is easier to understand and use compared to low-level languages.
A program that directly executes high-level language code without prior translation into machine code. A program that translates high-level language code into low-level machine code.
The lowest-level programming language consisting of binary code that can be directly executed by a computer's CPU. A low-level programming language that uses mnemonics to represent machine instructions.
The ability of a program written in a high-level language to run on different computer systems without modification. The process of simplifying complex systems by hiding unnecessary details in high-level languages.

 

Efficiency Readability
Assembler Translator
Lexical Analysis Syntax Analysis
Semantic Analysis Code Generation

 

The quality of code written in a high-level language that is easy to understand and maintain. The measure of how well a program written in a low-level language utilizes computer resources.
A program that converts code from one programming language to another without necessarily changing the underlying logic. A program that translates assembly language code into machine code.
The process of analyzing the grammar of the source code to determine its syntactic structure. The process of breaking down the source code into a sequence of lexemes (tokens) that can be processed by the compiler or interpreter.
The process of producing executable machine code or intermediate code from the analyzed source code. The process of analyzing the meaning of the source code and checking for semantic errors.

 

Optimization Linker

 

A program that combines object code generated by the compiler with external libraries to create an executable program. The process of improving the efficiency and performance of the generated machine code.