Capitulo 2 (Conceptos de lenguajes de programación)

Definición de un lenguaje de programación

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

1. Generación de código

1.1. Después de la optimización

1.2. Dar formato apropiado a la salida

1.3. Directamente ejecutable o

1.3.1. Pasos de traducciones adicionales

1.4. Transformar enunciados

2. Tabla de simbolos

2.1. Estructura de datos medular

2.2. Almacenan información

2.3. Entrada por cada identificador

2.4. Interacción con tipos de análisis

2.5. Detección de errores

3. Análisis Semántico

3.1. Fase medular de la traducción

3.2. Procesa estructuras sintacticas

3.3. Puente entre análisis y síntesis

3.4. Mantenimiento a tabla de símbolos

4. Análisis Sintáctico

4.1. Identifican las estructuras de un programa

4.1.1. Enunciados

4.1.2. Expresiones

4.2. Identifica serie de elementos léxicos

4.3. Alterna con el análisis semántico

4.4. Uso de pila para comunicarse

5. Análisis Léxico

5.1. Agrupar serie de caracteres

5.1.1. Identificadores

5.1.2. Delimitadores

5.1.3. Palabras clave

5.2. Identifica el tipo de elementos

5.3. Elaborar representación interna

6. Análisis del programa fuente

6.1. Se presenta una serie larga de símbolos

6.2. Construcción carácter por carácter

6.3. Análisis de la estructura del programa

7. Translación de lenguajes de programación

7.1. Traducción de un programa

7.2. De sintaxis a forma ejecutable

7.3. Esfuerzos importantes de traducción

7.4. Ejecución Eficiente

8. Compilación

8.1. Realiza dos pasos sobre el programa fuente

8.2. Descompone el programa

8.3. Genera programa objeto

8.4. Ensamblador

8.5. Compilador

8.6. Editor de vínculos

9. Síntesis del programa objeto

9.1. Generación del código

9.2. Optimización del programa

9.2.1. Gracias a representación en código intermedio

9.3. Creacion código objeto de salida

10. Programa objeto

10.1. Esta la vinculación y carga

10.1.1. Segmentos de código traducido

10.2. Uso de tablas de cargador anexas

10.3. Programa ejecutable listo

11. Interpretación

11.1. Traducción a lenguaje maquina antes de la ejecución

12. Compiladores

12.1. Traduce programa fuente a programa objeto

12.2. Efectúa solo traducción

12.3. No ejecuta el programa

13. Interpretes

13.1. Procesa programas: lenguaje de alto nivel

13.2. Traduce a código maquina

13.3. Trabajo en modo convencional

13.4. Ejecución de cada instrucción antes de la siguiente

14. Comparación entre intérpretes y compiladores

14.1. Interpretes:

14.1.1. Análisis sintáctico: ingreso por teclado

14.1.2. Mensaje diagnostico de problemas

14.2. Compiladores:

14.2.1. Velocidad de ejecución

14.2.2. Ocupan menos memoria: Programas cortos

15. Ámbito de una variable de programa

15.1. Rango de sentencias

15.2. Visibilidad de la variable

16. Conceptos

16.1. Visible: Se puede referenciar en una sentencia

16.2. Reglas de ámbito

16.3. Variable Local

16.4. Variable no local

17. Ámbito estático

17.1. Ligadura de nombres a variables no locales

17.2. Ocurre en el tiempo de ejecucción

17.3. Introducido por ALGOL 60

17.4. Pueden anidarse los subprogramas(Excepción: Lenguaje C)

17.5. Antepasados estáticos: los padres estáticos en el programa

17.6. Declaración de variable oculta la declaración de otra variable (nombres iguales)

18. Ámbito dinámico

18.1. APL

18.2. SNOBOL4

18.3. Secuencia de llamadas a subprogramas

18.4. Determinación del ámbito en tiempo de ejecución

18.5. Comunicación unidades de programa

19. Entorno de referencia

19.1. Perteneciente a una sentencia

19.2. Colección de identificadores visibles

20. Determinación de atributos de una variable

20.1. Buscar declaración local

20.2. Buscar en su padre dinámico (si aun no se ha encontrado)

20.3. Buscar en su ancestro dinámico (si aun no se ha encontrado)

20.4. No se encontró, error en la ejecución

21. Lenguajes con ámbito estático

21.1. Compuesto por:

21.2. Variables declaradas en su ámbito local

21.3. Variables visibles de antepasados estáticos

22. Lenguajes con ámbito dinámico

22.1. Compuesto por:

22.2. Variables declaradas localmente

22.3. Variables visibles de subprogramas activos