Académique Documents
Professionnel Documents
Culture Documents
ESTRUCTURA DE COMPILADORES
OBJETIVO GENERAL: Estudiar y aplicar a las aplicaciones de software, las
herramientas de trabajo y desarrollo de compiladores, para as poder entender
con claridad y dar la importancia a cada una de las fases que intervienen en un
compilador, y de esta manera entender de mejor forma la optimizacin de
cdigo.
OBJETIVOS ESPECFICOS:
Conocer las definiciones de compiladores y de cada una de sus partes
Entender el funcionamiento e importancia de los compiladores en los
lenguajes de programacin actuales.
Estudiar las ventajas y desventajas de los compiladores v/s los
intrpretes.
Analizar la importancia de la optimizacin de cdigo en el desarrollo de
software a nivel comercial.
COMPILADORES
El nombre de compilador viene desde los aos 50 del siglo pasado, utilizado
por Murray Hooper. En esa poca la compilacin se vea como la compilacin
de una secuencia de subprogramas tomados de una librera (biblioteca) de
programas.
En la actualidad a la compilacin se le llama programacin automtica.
Los primeros compiladores modernos se desarrollaron desde finales de los
aos 50, como el FORTLAN.
PROGRAMA FUENTE
COMPILADOR
Programa Objeto
Errores
Algunas de las principales estructuras de datos que son necesarias para las
fases como parte de su operacin y que sirven para comunicar la informacin
entre las fases son las siguientes:
rbol sintctico puede estar representado por un registro variable, con cada
clase de nodo conteniendo solamente la informacin necesaria para ese caso.
If x = O then... else...
CMP X,O
JNE NEXT ;; ubicacin del NEXT an no conocida
Por lo regular debe dejarse un espacio en blanco para el valor de NEXT, el cual
se llena una vez que se logra conocer el valor. Esto se consigue fcilmente con
el uso de un archivo temporal.
Las partes de un Compilador: El compilador tiene seis fases las cuales las
dividimos de la siguiente forma:
PROGRAMA FUENTE
ANALISIS
LEXICOGRAFICO
Stream de tokens
ANALISIS
SINTACTICO
FRONT END
rbol de parser
ANALISIS
SEMANTICO
ANLISIS
rbol semntica
MANEJO
DE
ERRORES
GENERACIN DE
CDIGO
INTERMEDIO
TABLA
DE
SIMBOLOS
Intermedio
OPTIMIZACIN DE
CDIGO
SINTESIS
BACK END
GENERACIN DE
CDIGO
PROGRAMA OBJETO
Las fases de manejo de errores y tabla de smbolos interactan con todas las
dems.
LOS
GENERAD
ORES DE
ETAPA
DEL
TRABAJO
EN ESTA
MECANIZA
N GRAN
PARTE
SCANNER
S
GENERAD
ORES DE
PARSERS
LOS
TRABAJO
DE ESTA
ETAPA
MECANIZA
N GRAN
PARTE
DEL
SCANER
CHEQUEO DE
TIPOS
PROGRAMA
GENERACIN
DE CDIGO
PROGRAMA
FUENTE
OBJETO
SCANER
PRIMERA PASADA
PARSER
FRONT
END
ANALIZADOR
SEMANTICO
SEGUNDA PASADA
GENERADOR DE
CDIGO
INTERMEDIO
BACK
END
GENERADOR
DE CDIGO
PROGRAMA OBJETO
OPTIMIZADOR DE
CDIGO
ACTIVIDADES
2.