Evolución de los lenguajes de programación: | EL Informático GO Sistemas

Evolución de los lenguajes de programación:

Evolución de los lenguajes de programación:

En la década de 1940 cuando nacían las primeras computadoras digitales, el lenguaje que se utilizaba para programar era el lenguaje máquina, el cual traducía directamente el código máquina (código binario) comprensible para las computadoras. Las instrucciones en lenguaje máquina dependían de cada computadora y debido a la dificultad de su escritura, los investigadores de la época simplificaron el proceso de programación inventando sistemas de notación en los cuales las instrucciones se representaban en formatos nemónicos (nemotécnicos) en vez de en formatos numéricos, que eran más difíciles de recordar. Por ejemplo, mientras la instrucción:

Mover el contenido del registro 4 al registro 8

se podía expresar en lenguaje máquina como

4048 o bien 0010 0000 0010 1000

en código nemotécnico podía aparecer como MOV R5, R6

Para convertir los programas escritos en código nemotécnico a lenguaje máquina, se crearon programas ensambladores. Es decir, los ensambladores son programas que traducen programas escritos en código nemotécnico en instrucciones numéricas en lenguaje máquina que son compatibles y legibles por la máquina. Estos programas de traducción se llaman ensambladores, porque su tarea es ensamblar las instrucciones reales de la máquina con los nemotécnicos e identificadores que representan las instrucciones escritas en ensamblador. A estos lenguajes se les denominó de segunda generación, reservando el nombre de primera generación para los lenguajes de máquina.

En las décadas de 1950 y 1960 comenzaron a desarrollarse lenguajes de programación de tercera generación que diferían de las generaciones anteriores en que sus instrucciones o primitivas eran de alto nivel (comprensibles por el programador, como si fueran lenguajes naturales) e independientes de la máquina. Estos lenguajes se llama- ron lenguajes de alto nivel. Los ejemplos más conocidos son Fortran (FORmula TRANslator), que fue desarrollado para aplicaciones científicas y de ingeniería, y Cobol (Common Business Oriented Language), que fue inventado por la U.S. Navy de Estados Unidos de América para aplicaciones de gestión o administración. Con el paso de los años aparecieron nuevos lenguajes como Pascal, Basic, C, C++, Ada, Java, C#, HTML, XML, entre otros.

Los lenguajes de programación de alto nivel se componen de un conjunto de instrucciones o primitivas más fáciles de escribir y recordar su función que los lenguajes máquina y ensamblador. Sin embargo, los programas escritos en un lenguaje de alto nivel, como Co Java necesitan ser traducidos a código máquina; para eso se requiere un programa denominado traductor. Estos programas de traducción se denominaron técnicamente, compilado- res. De este modo, existen compiladores de C, Fortran, Pascal, Java, etcétera. También surgió una alternativa a los traductores compiladores como medio de implementación de lenguajes de tercera generación que se denominaron intérpretes. Estos programas eran similares a los traductores, excepto que ellos ejecutaban las instrucciones a medida que se traducían en lugar de guardar la versión completa traducida para su uso posterior. Es decir, en vez de producir una copia de un programa en lenguaje máquina que se ejecuta más tarde (éste es el caso de la mayoría de los lenguajes, C, C++, Pascal, Java), un intérprete ejecuta realmente un programa desde su formato de alto nivel, instrucción a instrucción. Cada tipo de traductor tiene sus ventajas e inconvenientes, aunque hoy día prácticamente los traductores utilizados son casi todos compiladores por su mayor eficiencia y rendimiento.

Sin embargo, en el aprendizaje de programación se suele comenzar también con el uso de los lenguajes algo- rítmicos, similares a los lenguajes naturales, mediante instrucciones escritas en pseudocódigo (o seudocódigo), que son palabras o abreviaturas de palabras escritas en inglés, español, portugués, etcétera. Posteriormente, se realiza la conversión al lenguaje de alto nivel que se vaya a utilizar realmente en la computadora, como C, C++ o Java. Esta técnica facilita la escritura de algoritmos como paso previo a la programación.

 QR del contenido de este tema:

Publicar un comentario

Tema Anterior Tema Siguiente