Estudiante

Solo disponible en BuenasTareas
  • Páginas : 10 (2475 palabras )
  • Descarga(s) : 0
  • Publicado : 8 de diciembre de 2010
Leer documento completo
Vista previa del texto
COMPILADORES PRINCIPIOS, TECNICAS Y HERRAMIENTAS
Introducción a la Compilación

La escritura de compiladores comprendes los lenguajes de programación, la arquitectura de computadores, la teoría de lenguajes, los algoritmos y la ingeniería de software.
Se pueden construir traductores para una gran variedad de lenguajes y maquinas, además se describen componentes, entorno y algunas herramientasde software que facilitan la construcción de compiladores.
COMPILADORES:
Programa que lee un programa escrito en un lenguaje, el lenguaje fuente, y lo traduce a un programa equivalente en otro lenguaje, el lenguaje objeto. Compilador informa al usuario de la presencia de errores en el programa fuente.

Hay miles de lenguaje fuentes, desde los lenguajes de programación fuente, tradicionales,Pascal o Fortran, hasta los especializados. Los lenguaje objeto son variados, que pueden ser de programación o de máquina, entre un microcomputador y un supercomputador. Se clasifican como de una pasada, múltiples pasadas, de carga y ejecución, depuración u optimización, dependiendo de cómo hayan sido construidos y qué función vayan a realizar, por lo general realizan la misma tarea.
Antes serelacionaban los primero trabajos de compilación con la traducción de formulas aritméticas a código máquina. Se han ido descubriendo técnicas sistemáticas para desarrollar algunas de las tareas que surgen en la compilación. A su vez lenguajes, lenguajes de implantación, entornos de programación y herramientas de software.
MODELO ANALISIS Y SINTESIS DE LA COMPILACION:
Análisis: Divide sus alprograma fuente en sus elementos componentes y crea una representación intermedia del programa fuente.
Síntesis: Construye el programa objeto deseado a partir de la representación intermedia.
Por lo tanto la Síntesis es la requiere las técnicas más especializadas. Durante el análisis, se determinan las operaciones que implica el programa fuente y se registran en una estructura jerárquica llamadaárbol, casi siempre se usa una clase especial de árbol llamado sintáctico, donde un nodo representa una operación y los hijos de un nodo son los argumentos de la operación.

Muchas herramientas de software que manipulan programas fuente realizan primero algún tipo de análisis. Por ejemplo:
1. Editores de estructuras: Transforma secuencia de órdenes en programa fuente. Crea, modifica y analizatexto de programa, según la estructura jerárquica apropiada.
2. Impresoras estéticas: Analiza e imprime programa, haciendo visible su estructura.
3. Verificadores estáticos: Lee y analiza un programa, descubriendo errores potenciales e impidiendo ejecutar el programa.
4. Interpretes: Realiza operaciones que implica el programa fuente, a menudo se usan para ejecutar lenguajes de órdenes,pues cada operador que se ejecuta en un lenguaje de órdenes suele ser una invocación de una rutina compleja, como un editor o un compilador.
Hay lugares, al parecer, no relacionados donde la tecnología de los compiladores se usa con regularidad. La parte del análisis de cada uno, es parecida a la de un compilador convencional:
1. Formadores de Textos: Toma como entrada una cadena decaracteres, compone el texto, puede incluir órdenes para indicar párrafos, figuras o estructuras matemáticas, como subíndices y superíndices.
2. Compiladores de circuitos de silicio: Tiene lenguaje fuente muy parecido al lenguaje de programación convencional, solo que en lugar de localidades de memoria tiene señales lógicas o grupo de señales en un circuito de conmutación.
3. Intérpretes deConsultas: Traduce un predicado que contiene operadores relacionales y booleanos a órdenes para buscar en una base de datos registros que satisfagan ese predicado.
El contexto de un compilador
Un programa fuente se puede dividir en módulos almacenados en archivos distintos. La tarea de reunir el programa se confía al preprocesador, a su vez expande abreviaturas llamadas “macros” a proposiciones de...
tracking img