automatas
Los compiladores son programas o herramientas encargadas de compilar. Un compilador toma un texto (código fuente) escrito en un lenguaje dealto nivel y lo traduce a un lenguaje comprensible por las computadoras (código objeto).
Básicamente, existen dos grandes formas de ejecutar programas: programas compilados (previamente pasados porun compilador) y programas interpretados (necesitan pasar por un intérprete para ejecutarse en tiempo real).
En este documento, veremos y trataremos de comprender todo sobre lo que es un compilador,pero en general, nos enfocaremos en las fases.
Compilador: Un compilador acepta programas escritos en un lenguaje de alto nivel y los traduce a otro lenguaje, generando un programa equivalenteindependiente, que puede ejecutarse tantas veces como se quiera..
Un compilador debe, en primer lugar, convertir el archivo fuente en un archivo intermedio que se llama archivo objeto o archivo códigoobjeto. El archivo objeto contiene una traducción del código del programa en lenguaje máquina, pero aún no se considera un programa ejecutable.
Los compiladores siguen estas tareas:
Análisisléxico. Es la parte inicial de leer y analizar el código fuente. El texto es leído y dividido en tokens, cada uno de los cuales corresponde a un símbolo en el lenguaje de programación, por ejemplo, el nombrede una variable, una palabra reservada o un número.
Análisis sintáctico. En esta fase se toma una lista de tokens producida por el análisis léxico y los acomoda en una estructura de árbol llamadaárbol sintáctico que refleja la estructura del programa. Esta fase también se llama parsing.
Verificación de tipos. En esta parte se analiza el árbol sintáctico para determinar si el programa violaciertos requerimientos de consistencia, es decir, si una variable se utiliza pero no se declara, o si se usa en un contexto que no tiene sentido por el tipo de variable, tal como un string para...
Regístrate para leer el documento completo.