Programación Y Compiladores Fundamentos De Programacion
INSTITUTO TECNOLOGICO DE NUEVO LEON
Nombre: Juan Pablo Jerónimo
Tutor: Pedro Cesar Acosta Molina Número De Control: 15480788 Materia: Fundamentos De Programación Tema o Debate: “Lenguajes De Programación y Compiladores” Lenguajes De Programación
Los primeros lenguajes de programación surgieron de la idea de charles
Babagge, la cual se le ocurrió a este hombre a mediados del siglo XIX, era un profesor matemático de la universidad de Cambridge e inventor inglés. Que al principio del siglo XIX predijo muchas de las teorías en que se basaban los actuales ordenadores, consistía en lo que el denominaba maquina analítica, pero con motivos técnicos no pudo construirse hasta mediados del siglo XX. A la hora de establecer el origen del lenguaje de programación tenemos que hacer referencia, sin lugar a dudas a Ada Lovelace que está considerada como la primera programadora de computadoras conocida en todo el mundo. De ahí, curiosamente que se hablara en su honor del lenguaje de programación Ada. Y es que dicha figura llevo a cabo no solo la manipulación de una serie de símbolos para una máquina del científico británico “charles Babagge” si no también la consecución de establecimiento de las instrucciones necesarias para que un computador pudiera realizar una serie de cálculos iniciales. Un lenguaje de programación, es un lenguaje diseñado para describir el conjunto de acciones consecutivas que en un equipo debe de ejecutar. Según la definición teórica, como lenguaje se entiende a un sistema de comunicación que posee una determinada estructura, contenido y uso. La programación es, en el vocabulario propio de la informática, el proceso de escritura del código fuente de un software. De esta manera. Puede decirse que la programación le indica al programa informático que acción tiene que llevar a cabo y cuál es el modo de concretarla. Con estas nociones en claro, podemos afirmar que un lenguaje de programación es aquella estructura que, con cierta base sintáctica y semántica. Imparte distintas instrucciones a un programa de computadora. Por lo tanto, un lenguaje de programación es un modo práctico para que los seres humanos puedan dar instrucciones a un equipo. Dentro del lenguaje de programación es muy importante subrayar que los profesionales que se dedican a desarrollar este trabajan con un conjunto de elementos que son los que dan forma y sentido al mismo, los que permiten que aquellos funcionen y logren sus objetivos. Entre los mismos se encontrarían, por ejemplo, las variables, los vectores, los bucles, los condicionantes, la sintaxis o la semántica estática. Existen diversos lenguajes de programación, lo que ha llevado al desarrollo de Interpretes y compiladores (hablaremos más adelante) De acuerdo a su nivel de abstracción se habla de: Lenguaje maquina; son las cadenas binarias que pueden ser legibles de manera directa por la computadora. Lenguaje de bajo nivel; el lenguaje de programación que se acerca al funcionamiento de una computadora Lenguaje de medio nivel; comparte características con los lenguaje de bajo nivel, pero también con los más avanzados. Lenguaje de alto nivel; formado por los elementos del lenguaje humano
Muchos son los lenguajes que existen actualmente en el mercado de la
tecnología y la informática. No obstante, entre los más importantes podemos citar a Pascal, Visual Basic, SQL, Delphi, Lingo, Cobol, HTML o Java. Este último, por ejemplo, se caracteriza por que fue desarrollado en el año 1955 por el científico de la computación James Gosling y por qué fue orientado a objetos. Compiladores
En 1946 se desarrolló el primer ordenador digital. En un principio, estas máquinas
ejecutaban instrucciones consistentes en códigos numéricos que señalaban a los circuitos de la maquina los estados correspondientes de cada operación. Esta expresión mediante códigos numéricos se llamó lenguaje máquina. Pero los códigos numéricos de las maquinas son complejos. Pronto los primeros usuarios de estos ordenadores descubrieron la ventaja de escribir sus programas mediante claves más fáciles para recordar esos códigos numéricos; al final, todas esas claves juntas traducían manualmente a lenguaje máquina. Estas claves constituyen los llamados lenguajes ensambladores, que se generalizaron en cuanto se dio el paso decisivo de hacer que las propias maquinas realizaran el proceso mecánico de la traducción. A este trabajo se le llama ensamblar programas. Los trabajos de investigación se orientaron entonces hacia la creación de un lenguaje que expresara las distintas acciones a realizar de una manera más sencilla posible para el hombre, así en 1950, John Backus dirigió una investigación en I.B.M en un lenguaje algebraico. En 1954 se empezó a desarrollar un lenguaje que permitía escribir fórmulas matemáticas de manera traducible por un ordenador. Un compilador es un programa que se encarga de traducir el código fuente de una aplicación que este en desarrollo, es decir convierte un programa hecho en lenguaje de programación de alto nivel a un lenguaje máquina que pueda ser comprendido por el equipo y pueda ser procesado o ejecutado por este. Para cada lenguaje de programación se requiere un compilador separado. El compilador traduce todo el programa antes de ejecutarlo. Los compiladores son, pues, ejecutables (lenguaje maquina) y pueden ser: Una sola pasada: examina el código fuente una vez, generando el código o programa objeto. Optimación; le un código fuente, lo analiza y descubre errores potenciales sin ejecutar el programa. Compiladores incrementables; generan un código objeto instrucción por instrucción. Ensamblador; el lenguaje fuente es el lenguaje ensamblador y posee una estructura sencilla. Compilador con montador; es el que compila distintos módulos de forma independiente y después es capaz de enlazarlos. Autocompilador; es el que está escrito en el mismo lenguaje que va a compilar. Evidentemente, no se puede ejecutar la primera vez. Sirve para hacer ampliaciones al lenguaje, mejorar el código generado, etc. La cual la ejecución de un programa con compilador requiere dos etapas: 1) Traducir el programa simbólico a código maquina 2) Ejecución y procesamiento de datos. A primera vista, la diversidad de compiladores puede ser abrumadora. Hay miles de lenguaje fuente, y las tareas básicas que debe realizar cualquier compilador son esencialmente las mismas. Al comprender tales tareas, se pueden construir compiladores para una gran diversidad de lenguajes fuentes y maquinas objeto utilizando las mismas técnicas básicas. Nuestro conocimiento de cómo organizar y escribir compiladores a principios de los años cincuenta.