Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
COMPILADORES por Mind Map: COMPILADORES

1. Fases de un compilador

1.1. Fase de análisis

1.1.1. Codigo fuente

1.1.2. Componentes léxicos

1.1.2.1. Árbol sintáctico

1.1.3. Análisis semántico

1.1.3.1. Árbol anotado

1.2. Representación intermedia

1.2.1. Análisis léxico

1.3. Fase de Síntesis

1.3.1. Generación de cód. intermedio

1.3.1.1. Código intermedio

1.3.2. Optimización de cod. intermedio

1.3.2.1. Código intermedio

1.3.3. Generación de código

1.3.3.1. Código objeto

1.3.4. Optimización de código

1.3.4.1. Código objeto

2. Es un es un programa informático que transforma código fuente escrito en un lenguaje de programación o lenguaje informático

3. Tipos de compiladores

3.1. Compilador Cruzado

3.1.1. Se genera código en lenguaje objeto para una máquina diferente a la que se está utilizando para compilar

3.2. Autocompilador

3.2.1. Es un compilador escrito en el mismo lenguaje que compila. Cuando se extiende entre muchas máquinas diferentes el uso de un compilador, y éste se desea mejorar, el nuevo compilador se escribe con el antiguo, de manera que pueda ser compilado por todas esas máquinas diferentes, y dé como resultado un compilador más potente de ese mismo lenguaje.

3.3. Metacompilador

3.3.1. Es sinónimo de compilador de compiladores. Se refiere a un programa que recibe como entrada las especificaciones del lenguaje para el que se desea obtener un compilador y genera como salida el compilador para ese lenguaje

3.4. Decompiladores

3.4.1. Realizan la tarea inversa a la de los compiladores. Traduce un programa fuente en un lenguaje de bajo nivel a otro objeto de nivel superior.

3.5. Compilador incremental

3.5.1. Es aquel que compila un programa en el que si después se descubren errores, en vez de corregir el programa fuente y compilarlo por completo, se compilan solo las modificaciones.

3.6. Compilador con montador y cargador

3.6.1. Compilador de distintos módulos de forma independiente y después los enlaza. Una de las características que diferencian a unos compiladores de otros es si tienen o no la posibilidad de traducir una parte de un programa de manera independiente y separada de la traducción de las otras partes que conforman el programa completo.