Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 1: Introduccin
ndice
Definicin de compilador
Tipos de compiladores
Historia de los compiladores
Estructura de un compilador
Especificacin de compiladores
Aplicaciones de los compiladores
Definicin de compilador
Ensamblador
Compilador cruzado
Compilador con montador
Autocompilador
Metacompilador
Decompilador
Historia de los compiladores
Anlisis Sintctico
Anlisis Semntico
Generacin de
Cdigo Intermedio
Geston de errores
Tabla de smbolos
Optimizacin de
Cdigo intermedio
Generacin y
Optimizacin de
cdigo final
Estructura de un compilador
Estructura de un compilador
Anlisis sintctico
Comprueba los valores unitarios del programa
(tokens):
Palabras reservadas(do, while, if, )
Palabras no especificas(identificadores, constantes)
Formados por tipo y lexema
Int contador
Identificador = tipo
contador = lexema
Estructura de un compilador
Anlisis Sintctico
Recibe los tokens del analizador lxico y
comprueba que estn ordenados conforme a la
gramtica
Estructura de un compilador
Anlisis Semntico
Comprueba la validez del programa
Comprobacin de tipos en operadores
Estructura de un compilador
Tabla de smbolos
Tabla donde se registran los identificadores,
constantes, funciones y otros objetos
especificados en el programa fuente
El compilador desarrolla funciones comunes de
acceso a ella
Estructura de un compilador
Manejo de errores
Mensajes de error que el compilador emite cuando
encuentra una inconsistencia en cualquiera de las fases de
compilacin
Normalmente en una compilacin no se muestran todos los
errores producidos:
Ocultacin de otros errores
Avalancha de errores
Se puede
Pararse al encontrar cualquier error
Intentar recuperar todos los errores de una pasada
Estructura de un compilador
Cdigo
Intermedio
Especificacin lxica:
Tokens mediante expresiones regulares
Especificacin sintctica:
Gramticas independientes del contexto
Especificacin semntica:
Lenguaje natural
Aplicaciones de las tcnicas de
compilacin
Interfaces textuales
Manejo de ficheros de texto estructurado
Procesadores de texto
Diseo e interpretacin de lenguajes
Gestin de bases de datos
Procesamiento del lenguaje natural
Traduccin de formatos de ficheros
Clculo simblico
Reconocimiento sintctico de formas