Professional Documents
Culture Documents
INTRODUCCIN
Conceptos relacionados
Arquitecturade
de
Arquitectura
Computadoras
Computadoras
Teorade
de
Teora
Lenguajes
Lenguajes
Lenguajesde
de
Lenguajes
Programacin
Programacin
Compiladores
Compiladores
Ingenierade
de
Ingeniera
Software
Software
Teorade
de
Teora
Algoritmos
Algoritmos
Compiladores
Un compilador es un programa que
lee un programa en un lenguaje y
lo traduce a un programa equivalente en otro lenguaje,
y adems informa al usuario sobre
la presencia de errores en el programa de entrada
programa
compilador
fuente
programa
objeto
mensajes
de error
HOY. Y A FUTURO
A futuro:
ENSAMBLADOR
Traducen programas escritos en lenguaje ensamblador a
cdigo mquina
COMPILADOR
INTERPRETE
No genera cdigo objeto, analiza y ejecuta directamente
cada proposicin del Programa Fuente (PF)
PREPROCESADOR
Sustituyen macros, incluyen archivos o extensin del
lenguaje.
biblioteca
archivos obj.relocal.
PARTES DE LA COMPILACIN
Ms:
Sistemas de
edicin y
depuracin
Generador de cdigo
Cdigo relocalizable
Enlazador
Objeto
Ao 2004
ANALISIS SEMANTICO
Se realizan revisiones para asegurar que los componentes de
un programa se ajustan de un modo significativo
10
:=
expresin
posicion
+
expresin
identificador
inicial
expresin
expresin
identificador
Ao 2004
velocidad
expresin
nmero
60
11
posicion
+
inicial
*
velocidad
:=
posicion
60
+
inicial
*
velocidad entareal
60
13
FASES DE UN COMPILADOR
PROGRAMA FUENTE
administrador
de la tabla
de smbolos
analizador lxico
analizador sintctico
analizador semntico
generador de cdigo intermedio
manejador
de errores
optimizador de cdigo
generador de cdigo
PROGRAMA OBJETO
14
TABLA DE SMBOLOS
Estructura de datos que contiene un registro por cada
identificador, con los campos para los atributos:
-- Informacin sobre la memoria asignada
-- tipo
-- mbito
-- Si es nombre de procedimiento (nmero, tipo
y mtodo de paso de cada argumento)
Permite encontrar rpidamente cada ID y almacenar o consultar datos de ese
registro
Ao 2004
15
16
OPTIMIZACIN DE CDIGO
17
GENERACIN DE CDIGO
18