Please enable JavaScript.
Coggle requires JavaScript to display documents.
COMPILADOR, ENSAMBLADOR E INTERPRETE - Coggle Diagram
COMPILADOR, ENSAMBLADOR E INTERPRETE
-
Compilador
Analiza el programa fuente y lo traduce a otro equivalente escrito en otro lenguaje (por ejemplo, en el lenguaje de la máquina). Traduce un código completo.
es un programa traductor que a diferencia de los intérpretes, lleva a cabo la fase de traducción de dos formas, primero traduce completamente el programa fuente o código máquina y seguidamente lo ejecuta
Partes
-
Front-end
Es la parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos
Está compuesto por las fases comprendidas entre el Análisis Léxico y la Generación de Código Intermedio.
Analisis
Se trata de la comprobación de la corrección del programa fuente,
Fases
-
Análisis Semántico (comprobación de la validez semántica de las sentencias aceptadas en la fase de Análisis Sintáctico)
-
Tipos
-
Compiladores optimizadores: realizan cambios en el código para mejorar su eficiencia, pero manteniendo la funcionalidad del programa original.
Compiladores de una sola pasada: generan el código máquina a partir de una única lectura del código fuente.
Compiladores de varias pasadas: necesitan leer el código fuente varias veces antes de poder producir el código máquina.
Compiladores JIT (Just In Time): forman parte de un intérprete y compilan partes del código según se necesitan.
Ensamblador
Es un tipo de herramienta que traduce un archivo de código fuente escrito en lenguaje ensamblador, a un archivo objeto que puede ser ejecutado por la computadora.
son los encargados de transformar o traducir los programas escritos en ensamblador a su equivalente en código maquina o binario para que pueda ser ejecutado por la CPU.
-
Intérprete
Analiza el programa fuente y lo ejecuta directamente, sin generar ningún código equivalente. Su acción equivale a la de un intérprete humano, que traduce las frases que oye sobre la marcha, sin producir ningún escrito permanente.
Traduce linea a linea.
Es un programa encargado de procesar y traducir cada instrucción o sentencia de un programa escrito en un lenguaje de alto nivel a código máquina y después ejecutarla.
Facilita la búsqueda de errores, pues la ejecución de un programa puede interrumpirse en cualquier momento para estudiar el entorno (valores de las variables, etc.)
Tipos
Intérpretes Puros
Son los que analizan una sentencia y la ejecutan, y así sucesivamente todo el programa fuente.
Interpretes Avanzados
Incorporan un paso previo de análisis de todo el programa fuente. Generando posteriormente un lenguaje intermedio que es ejecutado por ellos mismos.
-