Proceso de traducción de un programa

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 7,25 KB

1.Definición de un compilador


1.1.Es un programa que lee otro programa que está escrito en algún lenguaje (fuente), y lo traduce a otro programa  Parecido en otro lenguaje (objeto)

2.Partes constitutivas del compilador

2.1.Fase de análisis:


Divide al programa fuente en sus elementos O componentes y crea una representación intermedia

2.2.Fase de síntesis: Construye el programa objeto a partir de la Representación intermedia

3.Que son los editores de estructuras

3.1.Analiza el texto del programa fuente, asignándole una estructura Jerárquica apropiada

3.2.También puede proporcionar:

3.2.1.Palabras clave de forma automática

3.2.2.Saltos desde un paréntesis, llave, o Corchete que abre hasta su correspondiente que cierra

3.2.3.Ayuda en la edición de las Estructuras propias del lenguaje

4.Visualizadores estéticos

4.1.Imprime el programa fuente, de tal Forma quede visiblemente claro

4.1.1.Por ejemplo:Los comentarios pueden aparecer con un tipo de letra especial, al igual que las Palabras clave

5.Verificadores estáticos

5.1.Lee el programa fuente y lo analiza Para intentar descubrir errores potenciales sin ejecutar el programa

5.2.Por ejemplo:

5.2.1.Partes del programa que nunca se Podrán ejecutar

5.2.2.Si una variable se utiliza antes de Ser definida

5.2.3.Intentar utilizar una variable de Tipo real como apuntador

6.Interpretes

6.1.Realiza las operaciones, que envuelve El programa fuente

6.2.En la mayoría de los casos son Utilizados para ejecutar órdenes (por ejemplo: El intérprete de comandos)

7.Nombra y explica las tres fases del Análisis de una compilación

7.1.Análisis lineal


La secuencia de caracteres que forma el programa fuente se lee de Izquierda a derecha y se agrupa en componentes léxicos, que son secuencias de Caracteres que tienen un significado colectivo.

7.2.Análisis jerárquico:


Los componentes léxicos se agrupan Jerárquicamente en colecciones anidadas con un significado colectivo.

7.3.Análisis semántico:


Se realizan ciertas revisiones para Asegurar que los componentes de un programa se ajustan de un modo Significativo.

8.Que es la etapa inicial y que es la etapa Final de un compilador

8.1.Etapa inicial:

8.1.1.Comprende aquellas fases que Dependen principalmente del código fuente


8.1.2.Normalmente incluye el análisis Léxico, sintáctico y semántico, la creación de la tabla de símbolos, la Generación de código intermedio y cierta optimización de éste.

8.1.3.También incluye el manejo de errores Correspondientes a cada etapa

8.2.Etapa final:

8.2.1. Comprende aquellas partes del compilador que dependen de la máquina Objeto

8.2.2. En general estas partes dependen del lenguaje Intermedio, más que del lenguaje fuente


8.2.3. Comprende aspectos de optimización y Generación de código, junto con el manejo de errores necesario y las Operaciones con la tabla de símbolos.

9.Herramientas para la construcción de Compiladores. Nombra y explica cada uno de ellos

9.1.Generadores de analizadores léxicos:

9.1.1.Trabajan a partir de una Especificación basada en expresiones regulares

9.1.2.La organización básica del Analizador léxico resultante es un autómata finito

9.2.Generadores de analizadores sintácticos:

9.2.1.Trabajan a partir de una gramática independiente del contexto

9.2.2.El generador hace de esta fase una de las más fáciles de aplicar

9.2.3.Se utilizan poderosos y complejos algoritmos para realizar el análisis

9.3.Dispositivos de traducción dirigida Por la sintaxis:

9.3.1.Producen grupos de rutinas que recorren el árbol de análisis sintáctico Generando código intermedio

9.4.Generadores automáticos de código


9.4.1.Toman un conjunto de reglas que definen la traducción de cada operación Del lenguaje intermedio al lenguaje de máquina objeto.

9.4.2.La técnica fundamental es la concordancia de plantillas

10.Compilador de compiladores


10.1.Un compilador de compiladores o Generador de Parsers es una utilería para generar el código fuente de un Parser, intérprete o compilador a partir de una descripción de lenguaje anotado En la forma de gramática (usualmente BNF)

11.Análisis léxicos definición y ejemplo


11.1.Toma una cadena de caracteres que Forman la entrada y produce una cadena de nombres o identificadores, palabras Claves o reservadas (PC) signos o marcas de puntuación

Ejemplo


:

TIPO                   EJEMPLOS

ID                        foo   n14   Last

NUM                  73  0  00  515

REAL                   66.1  .5  10.  1e67

IF                         if

COMMA           ,

NOTEQ              !=

LPAREN             (

12.Manejo de buffer0


12.1.El analizador de léxico (scanner) y El analizador de sintáxis (parser) forman un dúo “productor-consumidor”. El Scanner produce tokens y el parser los consume.

13.Análisis sintáctico


13.1.El parser es el programa que Funciona como núcleo del compilador. Alrededor del parser funcionan los demás Programas como el scanner, el analizador semántico y el generador de código Intermedio.

14.Porque hacer un análisis sintáctico (6 Tipocos)

14.1.Se puede tener una definición Precisa y fácil de entender

14.2.Una gramática apropiada reparte estructura a un lenguaje de programación

14.3.Podemos construir automáticamente un parser que determine si el programa Es sintácticamente correcto

14.4.Ayuda en el proceso de traducción

14.5.Fácil modificar/añadir al lenguaje

Entradas relacionadas: