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.