El lenguaje de programación de segunda generación ( 2GL ) es una forma generacional de categorizar los lenguajes ensambladores . [1] [2] [3]
El término se acuñó para distinguir los lenguajes de programación de tercera generación (3GL) independientes de la máquina de nivel superior , como COBOL, y los lenguajes de programación anteriores de primera generación ( código de máquina ) [2] [4]
Lenguaje de programación de segunda generación
Los lenguajes de programación de segunda generación tienen las propiedades:
- Las líneas dentro de un programa corresponden directamente a los comandos del procesador, actuando esencialmente como un dispositivo mnemónico que se superpone a un lenguaje de programación de primera generación.
- Un programador puede leer y escribir el código. Para ejecutarse en una computadora, debe convertirse en un formato legible por máquina, un proceso llamado ensamblaje . [4]
- El lenguaje es específico para un entorno y una familia de procesadores en particular. [2]
Los lenguajes de segunda generación se utilizan a veces para partes de kernels o controladores de dispositivos , y a veces se utilizan 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 de velocidad, pero varias desventajas han llevado a su declive:
- La programación se expresa en términos de instrucciones de procesador individuales, en lugar de lógica de nivel superior. [2] [3]
- Los detalles de hardware y memoria de bajo nivel deben administrarse manualmente, lo que a menudo es propenso a errores. [2]
- Los programas dependen de la máquina , por lo que se deben escribir diferentes versiones para cada arquitectura de máquina de destino. [3]
La gran mayoría de los 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 ensamblaje, 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 ensamblaje escrito a mano [2] [6]
Los lenguajes de segunda generación son quizás los más importantes en su lugar en la historia de la informática. Durante mucho tiempo, los lenguajes ensambladores de segunda generación fueron la única buena opción para el desarrollo de muchas máquinas, como la NES o la Commodore 64 . [7] [8] Los lenguajes de segunda generación representaron un paso masivo de la tradición de que los programadores se ajustaran a las necesidades de una máquina, y el primer paso hacia la adaptación de la máquina para el programador, un fenómeno que se repetiría en todos los lenguajes de programación posteriores. generaciones. [2] [3]
Ver también
Referencias
- ^ a b "Esperanza informática, lenguajes de generación"
- ↑ a b c d e f g Brookshear, J. Glenn. Ciencias de la computación: una descripción general (11ª ed.). Addison-Wesley. págs. 240–241. ISBN 0-13-256903-5.
- ^ a b c d Vass, Péter. "Generaciones de lenguajes de programación y paradigmas de programación" (PDF) .
- ^ a b "¿Qué son las generaciones de lenguajes de programación?" . WiseGEEK . Consultado el 11 de junio de 2019 .
- ^ "Principales idiomas informáticos 2019 - StatisticsTimes.com" . statisticstimes.com . Archivado desde el original el 12 de junio de 2019 . Consultado el 11 de junio de 2019 .
- ^ Paredes, Colin. "Por qué C es más rápido que el montaje" . Mentor, un negocio de Sieman . Mentor Inc . Consultado el 11 de junio de 2019 .
- ^ Corporación comodoro. "Referencia del programador C64" (PDF) . Corporación comodoro . Consultado el 11 de junio de 2019 .
- ^ Colaboradores de Wikilibros. "Montaje NES" . Wikilibros: Asamblea de NES . Consultado el 11 de junio de 2019 .