La etiqueta de lenguaje de programación de segunda generación ( 2GL ) es una forma generacional de categorizar los lenguajes ensambladores . [1] [2] [3] Pertenecen a los lenguajes de programación de bajo nivel .
El término fue acuñado para proporcionar una distinción entre los lenguajes de programación de tercera generación (3GL) independientes de la máquina de nivel superior (como COBOL , C o JavaScript ) y los lenguajes de programación anteriores de primera generación ( código de máquina ) [2] [4]
Los lenguajes de programación de segunda generación tienen las siguientes propiedades:
Los lenguajes de segunda generación a veces se usan para partes de kernels o controladores de dispositivos y, a veces, se usan en videojuegos, programas de gráficos y otros programas intensivos. [1]
En los programas modernos, los lenguajes ensambladores de segunda generación rara vez se utilizan. [5] La programación en lenguajes de segunda generación puede generar beneficios en velocidad, pero varias desventajas han llevado a su declive:
La gran mayoría de programas están escritos en un lenguaje de programación de tercera generación o en un lenguaje de programación de cuarta generación . La principal ventaja del ensamblador, la velocidad, se ha degradado por el hecho de que el código C bien escrito a menudo puede ser tan rápido o incluso más rápido que el ensamblado escrito a mano [2] [6]
Los lenguajes de segunda generación son quizás los más importantes por el lugar que ocupan en la historia de la informática. Durante mucho tiempo, los lenguajes ensambladores de segunda generación fueron la única buena opción de desarrollo para muchas máquinas, como la NES o la Commodore 64 . [7] [8] Los lenguajes de segunda generación representaron un gran paso lejos de la tradición de que los programadores se ajustaran a las necesidades de una máquina, y el primer paso hacia una máquina que se acomoda al programador, un fenómeno que se repetiría en todos los lenguajes de programación posteriores. generaciones. [2] [3]
{{cite web}}
: |author1=
tiene nombre genérico ( ayuda )