Kategorier: Alle - compilador - código - sintaxis - optimización

af viiktor 11 ramirez 6 år siden

574

capas de un compilador

Un compilador es un programa especial que traduce el código fuente de un programa en un lenguaje de alto nivel a un lenguaje de máquina. Este proceso implica varias etapas, cada una con una función específica.

capas de un compilador

RAMIREZ LÓPEZ VICTOR ARATH GRUPO: 1155

Los errores encontrados en las distintas fases de análisis se envían a un módulo denominado manejo de errores. Se encarga de escribir un mensaje con el error

Controladores de error

Tabla de simbolos

Es una estructura de datos que se mantendrá en todas las fases de un compilador. Todos los nombres de identificador junto con sus tipos se almacenan aquí.

Capas de un compilador

¿Qué es un compilador?

Es programa especial que traduce de código fuente de un programa a lenguaje de máquina.
¿Cuáles son sus capas?

Código fuente

conjunto de líneas de texto con los pasos que debe seguir la computadora para ejecutar dicho programa

Analizador léxico

lee la secuencia de caracteres de izquierda a derecha del programa fuente y agrupa las secuencias de caracteres en léxicos o tokens

Análisis Sintáctico

Determina si la secuencia de componentes léxicos sigue la sintaxis del lenguaje y obtiene la estructura jerárquica del programa en forma de árbol.

Análisis Semántico

Realiza las comprobaciones necesarias sobre el árbol sintáctico para determinar el correcto significado del programa.

Generación de código intermedio

Genera un código mejorado, ya no estructurado, más fácil de traducir directamente a código ensamblador o máquina, compuesto de un código de tres direcciones

Optimización de código

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

Se traduce el código intermedio en una secuencia de (generalmente) reubicables código máquina.

Programa objeto

Es aquel programa que se encuentra en lenguaje máquina y que ya es ejecutable por esta.