Compiladores

Páginas: 9 (2053 palabras) Publicado: 21 de febrero de 2013
Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce comocompilación.1Un compilador es un programa que permite traducir el código fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (típicamente lenguaje de máquina). De esta manera un programador puede diseñar un programa en un lenguaje mucho más cercano a como piensa un ser humano, para luego compilarlo a un programa más manejable por una computadora.
Historia
En 1946 sedesarrolló la primera computadora digital. En un principio, estas máquinas ejecutaban instrucciones consistentes en códigos numéricos  lo que se denominó lenguaje máquina.
 los primeros usuarios de estos ordenadores descubrieron la ventaja de escribir sus programas mediante claves más fáciles de recordar que esos códigos; al final, todas esas claves juntas se traducían manualmente a lenguaje máquina. Estasclaves constituyen los llamados lenguajes ensambladores.
 Los trabajos de investigación se orientaron hacia la creación de un lenguaje que expresara las distintas acciones a realizar de una manera lo más sencilla posible para una persona. El primer compilador fue escrito por Grace Hopper, en 1952 para el lenguaje de programación A-0. En 1950John Backus dirigió una investigación en IBM sobre unlenguaje algebraico. En 1954 se empezó a desarrollar un lenguaje que permitía escribir fórmulas matemáticas de manera traducible por un ordenador; le llamaron FORTRAN (FORmulae TRANslator). Fue el primer lenguaje de alto nivel y se introdujo en 1957 para el uso de la computadora IBM modelo 704.
Surgió así por primera vez el concepto de un traductor como un programa que traducía un lenguaje a otrolenguaje
La tarea de realizar un compilador no fue fácil. El primer compilador de FORTRAN tardó 18 años
 Desde 1970 se ha convertido en una práctica común escribir el compilador en el mismo lenguaje que este compila, aunque Pascal y C han sido alternativas muy usadas.
Crear un compilador autocontenido genera un problema llamado bootstrapping, es decir el primer compilador creado para unlenguaje tiene que o bien ser compilado por un compilador escrito en otro lenguaje o bien compilado al ejecutar el compilador en un intérprete.

-------------------------------------------------
Partes de un compilador
1.- Análisis: Se trata de la comprobación de la corrección del programa fuente, e incluye las fases correspondientes al
* a)  Análisis Léxico ,aquí se lee el programa fuente deizquierda a derecha, También se comprueba que los símbolos del lenguaje (palabras clave, operadores, etc.) se han escrito correctamente.  (que consiste en la descomposición del programa fuente en componentes léxicos),
* b)  Análisis Sintáctico (Se comprueba si lo obtenido de la fase anterior es sintácticamente correcto )
La estructura jerárquica de un programa normalmente se expresa utilizandoreglas recursivas. Por ejemplo, se pueden dar las siguientes reglas como parte de la definición de expresiones:
* Cualquier identificador es una expresión.
* Cualquier número es una expresión.
* Si expresión1 y expresión2 son expresiones, entonces también lo son:
* expresión1 + expresión2
* expresión1 * expresión2
* ( expresión1 )
* C) AnálisisSemántico ( revisa el programa fuente para tratar de encontrar errores semánticos y reúne la información sobre los tipos para la fase posterior de generación de código).

* Síntesis: Consiste en generar el código objeto equivalente al programa fuente. Sólo se genera código objeto cuando el programa fuente está libre de errores de análisis, lo cual no quiere decir que el programa se ejecute correctamente,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Compiladores
  • Compilador
  • COMPILADORES
  • Compiladores
  • Compiladores
  • Compiladores
  • compiladores
  • Compiladores

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS