Você está na página 1de 11

COMPILADORES

Elaborado por: Diana Lizeth Ibaez UAN Tunja-2013

DEFINICION
Son programas de computadora que traducen de un lenguaje a otro. Un compilador toma como entrada un programa escrito en

lenguaje fuente y produce un programa equivalente escrito en lenguaje


objeto. Generalmente al lenguaje fuente se le asocia como leguaje de alto

nivel, mientras el lenguaje objeto se conoce como cdigo de objeto


(cdigo de maquina) escrito especficamente para una maquina objeto

DEFINICIN

TIPOS DE TRADUCTORES
Compilador: programa que convierte un archivo de lenguaje de programacin a su correspondiente en lenguaje objeto. Ensamblador: programa que convierte de lenguaje nemnico a lenguaje maquina. Formadores de texto: toman como entrada una cadena de caracteres

que incluye el texto a componer y ordenes para identificar.


Interpretes: ejecutan las instrucciones del programa segn se vallan presentando. Permiten aadir cdigo durante la ejecucin.

FASES DE UN COMPILADOR
Conceptualmente un compilador opera en fases, cada

una de las cuales transforma el


programa fuente de una representacin a otra.

ANALIZADOR LXICO:
Lee la secuencia de caracteres de izquierda a derecha del programa fuente

a grupa las secuencias de caracteres en unidades con significado propio.

ANALIZADOR SINTCTICO
Determina s la secuencia de componentes lxicos sigue la sintaxis del

lenguaje y obtiene una estructura jerrquica del programa en forma de rbol.

ANALIZADOR SEMNTICO
Realiza las comprobaciones necesarias sobre el rbol sintctico

para determinar el correcto significado del programa.

G E N E R AC I N Y O P T I M I Z AC I N DE CDIGO INTERMEDIO
Consiste en la calibracin del rbol sintctico donde ya no

aparecen construcciones de alto nivel. Generando un cdigo


mejorado, llamado cdigo intermedio. Cdigo Optimizado a [indice]=6 Cdigo Intermedio ti= indice*elem_size(a) t2=&a+t1 t3=6

G E N E R AC I N D E C D I G O OBJETO
Toma como entrada la representacin intermedia y genera el cdigo objeto. La optimizacin depende la maquina, es necesario conocer el conjunto de instrucciones, entre otros.

MOV R0,t1 MOV R1,&a ADD R1,R0 MOV *R1,6

Valor de intex -> Direccion de a -> R1 Sumar R0 a R1 Contante 6 ->direccion en R1

TABLA DE SMBOLOS
Es una estructura tipo diccionario con operaciones insercin,

borrado y bsqueda, que almacena informacin sobre los smbolos


que van apareciendo a la largo del programa, como son: Los identificadores (variables y funciones) Etiquetas Tipos de definiciones por el usuario (arreglos, registros, etc.)

Gestor de errores: detecta e informa de errores que se producen durante le fase de anlisis.

Você também pode gostar