COMPILADORES

Páginas: 6 (1407 palabras) Publicado: 31 de enero de 2014
Captulo 1

La escritura de compiladores comprende
los lenguajes de programación, la
arquitectura de computadores, la teoría de
lenguajes, los algoritmos y la ingeniería de
software.

Un compilador es un 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.

En la compilación hay dospartes:
Análisis divide al programa 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.

Durante el análisis, se determinan las
operaciones que implica el programa
fuente y se registran en una estructura
jerárquica llamada árbol.

Editores de estructuras.Un editor de
estructuras toma como entrada una
secuencia de órdenes para construir un
programa fuente.
Impresoras estéticas. Una impresora estética
analiza un programa y lo imprime de forma
que la estructura del programa resulte
claramente visible.

Verificadores estáticos. Un verificador
estático lee un programa, lo analiza e intenta
descubrir errores potenciales sin ejecutar elprograma.
Intérpretes. En lugar de producir un
programa objeto como resultado de una
traducción, un interprete realiza las
operaciones que implica el programa fuente.

Formadores de textos. Toma como entrada
una cadena de caracteres, la mayor parte de
la cual es texto para componer pero alguna
incluye órdenes para indicar párrafos, figuras
o estructuras matemáticas, como subíndices
osuperíndices.
Compiladores de circuitos de silicio. Tiene un
lenguaje fuente similar o idéntico a un
lenguaje de programación convencional.

Intérpretes de consultas. Traduce un
predicado que contiene operadores
relaciónales y booleanos a órdenes para
buscar en una base de datos registros que
satisfagan ese predicado.

En la compilación, el análisis consta de tres fases:
Análisis lineal,en el que la cadena de caracteres que
constituye el programa fuente se lee de izquierda a
derecha y se agrupa en componentes léxicos, que son
secuencias de caracteres que tienen un significado
colectivo.
Análisis jerárquico, en el que los caracteres o los
componentes léxicos se agrupan jerárquicamente en
colecciones anidadas con un significado colectivo.
Análisis semántico, en el que serealizan ciertas
revisiones para asegurar que los componentes de un
programa se ajustan de un modo significativo.

En un compilador, el análisis lineal se llama
análisis léxico o exploración.
Análisis sintáctico. El análisis jerárquico se
denomina análisis sintáctico. Este implica
agrupar los componentes léxicos del
programa fuente en frases gramaticales que
el compilador utiliza parasintetizar la salida.

La estructura jerárquica de un programa
normalmente se expresa utilizando reglas
recursivas. Por ejemplo, se pueden dar las
siguientes reglas como parte de la definición
de expresiones:
Cual quier identificador es una ex presió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ón] )

Las reglas (l) y (2) son reglas básicas (no
recursivas),
en tanto que la regla (3) define expresiones en
función de operadores aplicados a otras
expresiones.
Así, por la regla (l). inicial y velocidad son
expresiones.
Por la regla (2), 60 es una expresión, mientras
que por la regla (3), primero podemos inferir que
velocidad * 60 es una expresión, yfinalmente,
que inicial + velocidad * 60 también es una
expresión.

De manera similar, muchos lenguajes definen
recursivamente las proposiciones mediante
reglas como:
Si identificador1, es un identificador y expresión2
es una expresión, entonces
Identificador1 := expresión2
es una proposición.
Si expresión1 es una expresión y proposición2 es
una proposición, entonces
while (expresión1 )...
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