Low-level programming language
In computer science, a low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture (commands or functions in the language map closely to processor instructions).
Contents
[hide]Description
Generally this refers to either machine code or assembly language.
The word "low" refers to the small or nonexistent amount of abstraction between the language and machine language; because of this, low-level languages are sometimes described as being "close to the hardware." Because of the close relationship between the language and the hardware architecture programs written in low-level languages tend to be relatively non-portable.
Conversion to machine code
Low-level languages can convert to machine code without a compiler or interpreter -- second generation programming languages use a simpler processor called an assembler -- and the resulting code runs directly on the processor.
Efficiency
A program written in a low-level language is efficient: itcan be made to run very quickly, with a small memory footprint.
An equivalent program in a high-level language can be less efficient and use more memory.
Simple, but difficult to use
Low-level languages are simple, but considered difficult to use, due to numerous technical details that the programmer must remember.
First generation, second generation
Low-level programming languages are sometimes divided into two categories: first generation, and second generation.
High-level programming languages
High-level programming languages isolate execution semantics of a computer architecture from the specification of the program, which simplifies development.
See also
- Assembler
- Compiler
- Computer science
- High-level programming language
- Interpreter (computing)
- Programming language
External links
- Low-level programming language @ Wikipedia