Pasos para un compilador sencillo
El proceso de la compilación es una orden de varias fases las cuales cada etapa precedida de la entrada anterior, tiene su propia representación del programa de origen, y mantiene su resultado a la siguiente fase del compilador. También nos permiten entender la fase de un compilador.
AnƔlisis LƩxico
La primera fase de escÔner funciona como un texto escÔner. Esta fase busca en el código fuente como una secuencia de caracteres y la convierte en un lexema resultante. El Analizador Léxico representa estos lexemas resultantes en forma de fichas:
Sintaxis AnƔlisis
La siguiente fase se denomina la sintaxis anÔlisis o anÔlisis. Toma el token de anÔlisis léxico como entrada y genera un Ôrbol analizar (o Ôrbol de sintaxis). En esta fase, token arreglos se contrastan con el código fuente gramÔtica, es decir, el analizador comprueba si la expresión de los tokens es sintÔcticamente correcta.
Generación de código intermedio
Tras anÔlisis semÔntico el compilador genera un código intermedio del código fuente para el equipo de destino. Es un programa para algunos la mÔquina abstracta.
EstƔ entre el lenguaje de alto nivel y el lenguaje de mƔquina.
Este código intermedio debe ser generado de tal manera que hace que sea mÔs fÔcil de traducir en la mÔquina de destino.
Optimización de código
La siguiente fase de optimización de código es el código intermedio. La optimización puede ser asumida como algo que elimina código innecesario, y organiza la secuencia de declaraciones con el fin de acelerar la ejecución del programa sin desperdicio de recursos (CPU, memoria).
Generación de código
En esta fase, el generador de código optimizado la representación del código intermedio y la asigna a la mÔquina de destino. El generador de código se traduce el código intermedio en una secuencia de (generalmente) reubicables código mÔquina. Secuencia de instrucciones de código mÔquina realiza la tarea como el código intermedio.
Tabla de sĆmbolos
Es una estructura de datos mantendrĆ” en todas las fases de un compilador. Todos los nombres de identificador junto con sus tipos se almacenan aquĆ. La tabla de sĆmbolos hace que sea mĆ”s fĆ”cil para que el compilador pueda buscar con rapidez el registro de código y recuperarla. La tabla de sĆmbolos se utiliza tambiĆ©n para el campo.



No hay comentarios.: