Difference between revisions of "Low-level programming language"
Karl Jones (Talk | contribs) (First) |
Karl Jones (Talk | contribs) (etc) |
||
Line 5: | Line 5: | ||
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. | 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. | ||
− | 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. | + | Low-level languages can convert to [[machine code]] without a [[compiler]] or [[Interpreter (computing)|interpreter]] -- second generation programming languages use a simpler processor called an [[assembler]] -- and the resulting code runs directly on the processor. |
A program written in a low-level language can 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. | A program written in a low-level language can 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. | ||
Line 17: | Line 17: | ||
== See also == | == See also == | ||
+ | * [[Compiler]] | ||
* [[Computer science]] | * [[Computer science]] | ||
* [[High-level programming language]] | * [[High-level programming language]] | ||
+ | * [[Interpreter (computing)]] | ||
* [[Programming language]] | * [[Programming language]] | ||
Revision as of 06:19, 27 August 2015
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).
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.
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.
A program written in a low-level language can 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.
Low-level languages are simple, but considered difficult to use, due to numerous technical details that the programmer must remember.
By comparison, a high-level programming language isolates execution semantics of a computer architecture from the specification of the program, which simplifies development.
Low-level programming languages are sometimes divided into two categories: first generation, and second generation.
See also
- Compiler
- Computer science
- High-level programming language
- Interpreter (computing)
- Programming language
External links
- [ ] @ Wikipedia