Translación de lenguajes de programación

Conceptos de compilación.

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Rocket clouds
Translación de lenguajes de programación por Mind Map: Translación de lenguajes de programación

1. 2. Análisis del programa fuente

1.1. Construcción del análisis de la estructura del programa, carácter a carácter

2. 3. Análisis léxico

2.1. Agrupa la serie de caracteres en sus constituyentes elementales

2.2. Requiere mayor parte del tiempo de traducción.

2.3. Exploración y análisis del programa fuente carácter por carácter

3. 4. Análisis sintáctico

3.1. Se identifican estructuras de programas mas grandes.

3.1.1. Enunciados

3.1.2. Declaraciones

3.1.3. Expresiones, etc

3.2. Usa los elementos léxicos producidos por el analizador léxico

4. 5. Análisis semántico

4.1. Puente entre las partes de analisis y de sintesis de la traduccion.

4.2. Ocurrencia de funciones subsidiarias importantes

4.2.1. Mantenimiento de las tablas de simbolos

4.2.2. Deteccion de errores

4.2.3. Expansion de macros

4.2.4. Ejecucion de enunciados de tiempo de compilacion

5. 6. Tabla de símbolos

5.1. Contiene tipicamente una entrada por cada identificador diferente encontrado en el programa fuente

6. 7. Síntesis del programa objeto

6.1. Implica generacion de codigo

6.1.1. Optimizacion del programa generado

7. 8. Generación de código

7.1. Transformacion del programa traducido en enunciados del programa objeto que va a constituir la salida de la traduccion

8. 9. Programa objeto

8.1. Vinculación y carga

8.2. Obtención del programa ejecutable final listo para usarse

9. 1. Compilación

9.1. Procesador de lenguajes

9.1.1. Acepta programas en cierto lenguaje fuente

9.1.2. Produce programas funcionalmente en otro lenguaje objeto

10. Ámbito de una variable

10.1. Rango de sentencias en el que es visible la variable

10.2. 1. Ámbito estático

10.2.1. Método de ligadura de nombres a variables no locales que ocurre en tiempo de compilación

10.2.2. Variable no local -> visible en todo el programa

10.2.3. Variable local -> visible solo en el cuerpo de código donde fue declarada

10.2.4. Si la variable no local tiene el mismo nombre de la variable local, entonces ésta es ocultada por la variable local

10.3. 2. Ámbito dinámico

10.3.1. Basado en la secuencia de llamadas a subprogramas y no en la relación sintáctica entre ellos ⇒ el ámbito sólo puede determinarse en tiempo de ejecución

10.4. 3. Entorno de referencia

10.4.1. colección de todos los identificadores visibles en dicha sentencia

10.4.2. 3.1 Ámbito estático

10.4.2.1. el entorno de referencia de una sentencia está compuesto por las variables declaradas en su ámbito local más todas las variables visibles de sus antepasados estáticos

10.4.3. 3.2 Ámbito dinámico

10.4.3.1. el entorno de referencia de una sentencia está compuesto por las variables declaradas localmente más todas las variables visibles del resto de subprogramas activos