Second-generation programming language (2GL) is a generational way to categorize assembly languages.
First- and third generation programming language
Second-generation programming language - Second-generation programming language is a generational way to categorize assembly languages. The term was coined to provide a distinction from higher level third-generation programming languages...
The term was coined to provide a distinction from higher level third-generation programming languages (3GL) such as COBOL and earlier first-generation programming language (machine code languages).
Second-generation programming language
Second-generation programming languages have the following properties:
- The code can be read and written by a programmer. To run on a computer it must be converted into a machine readable form, a process called assembly.
- The language is specific to a particular processor family and environment.
Second-generation languages are sometimes used in kernels and device drivers (though C is generally employed for this in modern kernels), but more often find use in extremely intensive processing such as games, video editing, graphic manipulation/rendering.
One method for creating such code is by allowing a compiler to generate a machine-optimized assembly language version of a particular function. This code is then hand-tuned, gaining both the brute-force insight of the machine optimizing algorithm and the intuitive abilities of the human optimizer.
What's previous
- First-generation programming language
What's next
- Third-generation programming language
- Fourth-generation programming language
- Fifth-generation programming language