Zusammenfassung der Ressource
COMPILADORES
- Traductor
- Programa
compuesto por:
- Entrada
- Escrito en lenguaje Fuente
- Salida
- Escrito en
lenguaje Destino
- Tipos :
- Traductores del
Idioma
- Traduce de un
idioma a otro
- Compiladores
- Tiene de entrada una
sentencia y de salida un
fichero
- Interpretes
- La salida es
una ejecución
- Preprocesadores
- Modifica
Programa antes
de ejecutar
- Interpretes de
comando
- Traduce
sentencias
- Ensambladores
y
Macroensabmbladores
- Compilador
sencillo
- Conversores
fuente
- Traduce lenguajes
de alto nivel
- Compilador
cruzado
- Compilador para ser
ejecutado en otra
máquina
- Conceptos básicos relacionados con la
traducción
- Compilación, enlace y
carga
- Fases básicas que hay
que seguir
- El enlazador o linker
- mecanismo de funcionamiento.
- Funcionamiento
de un enlazado
- Asume que cada segmento va a
ser colocado en la dirección 0
de la memoria.
- Dividido en segmentos,
- Labor realizada por el
cargador.
- El cargador suele ser parte del
sistema operativo
- Hacen referencia
las instrucciones
dentro de cada
segmento.
- Resuelve las referencias cruzadas.
- Para que un ordenador ejecute la
interpretación de un texto escrito
- Pasadas de compilación
- Número de veces que un compilador
debe leer el programa fuente .
- Compilación
incremental
- Es un compilador escrito en el mismo
lenguaje que compila.
- Metacompilador
- Un descompilador realiza una labor
de traducción inversa.
- Pasa de un código máquina, al
equivalente escrito en el lenguaje que lo
generó .
- Estructura de un Traductor
- Se divide en
dos partes:
- Sínteis
- Errores al generar
código
- Generación de Código
intermedio
- Genera código
independiente de la
máquina
- Generación del código
máquina
- Crea un bloque de
código de
maquina
ejecutable
- Fase de
Optimización
- Puede aplicarse en el
código intermedio
- Análisis
- Análisis
Lexicográfico
- Divide el programa
Fuente en
componentes
básicos
- Análisis
Sintáctico
- Comprueba que la
estructura sea
correcta
- Análisis
Semántico
- Comprueba que se
cumplan las
directrices del
programa a ejecutar
- Errores en
el programa
fuente
- Construcción Semántica
de Compiladores
- Etapa Inicial(front-end)
- Etapa
Final(back-end)
- Tabla de
Símbolos
- Estructura de datos
que posee
información de los
identificadores de los
usuarios
- Procesamiento
- El código fuente de
una aplicación se
puede dividir en
módulos
- También puede
expandir
abreviaturas,
llamadas macros
- Topic
principal
- ETAPA DE ANALISIS
- En esta etapa se controla que el
texto fuente sea correcto en todos
los sentidos
- se divide en 3
fases:
- Fase de
análisis
sintáctico
- Fase de
análisis
lexicográfico.
- La cadena de caracteres que
constituye el programa fuente
se lee de izquierda a derecha
y se agrupa a componentes
léxicos.
- Fase de
análisis
semántica
- Revisa el árbol sintáctico junto con
los atributos y la tabla de símbolos
para tratar de encontrar errores.
- Trabaja con una gramática de
contexto libre y genera el
árbol sintáctico que reconoce
su sentencia de entrada.
- ETAPA DE SINTESIS
- existen 3 fases:
- Fase de generación de
código intermedio.
- Fase de
optimización
de
codigo.
- Fase de
generación de
código
maquina.
- La fase final de un compilador
es generar un código objeto,
que consiste en código
maquina reubicable o código
ensamblador.
- En esta fase se trata de mejorar
el codigo intermedio, de modo
que en la siguiente fase resulte
un código de maquina mas
rápido de ejecutar.
- En esta etapa se suele
generar una representación
explicita del programa
fuente.
- BIBLIOGRAFÍA
:http://www.lcc.uma.es/~galvez/ftp/libros/Compiladores.pdf