Make your own free website on Tripod.com

Universidad Mundo Maya

Proceso de Compilación

Principal
Proceso de Compilación
Codificación
Programas Objeto
Cuestionario del Capítulo # 9

PROCESO DE COMPILACION

 

El proceso de compilación realiza primero un análisis del programa fuente para producir la sintaxis  del programa objeto. Para ello utiliza diversas tablas.

 

Para obedecer a estas funciones las estructuras deben obedecer a reglas muy rígidas, puesto que las ambigüedades no podrían ser dilucidas por la maquina. De ahí la importancia de los lenguajes formales y de los autómatas en relación con los lenguajes evolucionados  y los compiladores; pues las tareas esenciales del compilador son la evaluación sintáctica y la evaluación semántica.

 

El explorador (scanner) o analizador lexicográfico tiene como misión indagar sobre los caracteres del programa fuente y generar los símbolos del programa para pasarlo a los analizadores sintáctico y semántico.

 

El programa fuente se representa internamente de muy diversas formas de muy diversas formas: árbol, lista de cuartetos (operador, operador, operador, resulttado).

 

Por ultimo se realiza la generación del código, que es la traducción del programa fuente interno a lenguaje de maquina o a un lenguaje intermedio.

LA EVALUACION SINTACTICA

 

El análisis o evaluación sintáctica del programa fuente se divide en dos partes:

 

· El análisis lexicográfico.

· El análisis sintáctico

 

 

ANALISIS LEXICOGRAFICO

 

El programa fuente es para el analizador lexicográfico una secuencia de caracteres que necesita reconocer y de la cual debe eliminar los caracteres inútiles ( comentarios, espacios, etc.) y transformarla en una secuencia de elementos o términos que servirá de entrada a la fase de análisis sintáctico.

 

La tarea de distinguir los diferentes símbolos es lo que constituye el léxico.

 

A* B+C

A            Es un identificador

*             Es  un operador

Normalmente, en un lenguaje se tienen los siguientes grupos de caracteres

Constantes

Identificadores

Operadores (aritméticos, relacionales, lógicos, etc.)

Palabras calve ( IF, GOTO, WHILE, etc.)

Delimitadores(^{, “, ( etc.)

 

Cada uno de los grupos anteriores forma un tokens (unidad léxica) distinta; y a cada tokens se le asocia una tabla donde se reflejan todos los caracteres pertenecientes al mismo.

 

El léxico de un lenguaje es el conjunto de tokens distintos que lo forman.

Al conjunto de reglas que permite escribir correctamente un lenguaje se le llama sintaxis del lenguaje.