Jump to content

Second-generation programming language

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 184.22.250.34 (talk) at 18:49, 18 August 2018. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Second-generation programming language (2GL) is a generational way to categorize assembly languages.[1]

First- and third generation programming language

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

What's next

References