ARQUITECTURA
DE LOS COMPILADORES E INTÉRPRETES
Determina la estructura general de los compiladores e intérpretes con
base a su funcionalidad d sus etapas y
fases.
CONCEPTO
DE COMPILADOR
Un
compilador es un programa que permite traducir el código fuente de un
programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior. De esta manera un programador puede
diseñar un programa en un lenguaje mucho más cercano a cómo piensa un ser
humano, para luego compilarlo a un programa más manejable por una
computadora.
Algunos lenguajes compiladores
típicos son:
C
C++
Pascal
FORTRAN
COBOL
C
C++
Pascal
FORTRAN
COBOL
CARACTERÍSTICAS
DE UN COMPILADOR
Se usa con el fin de analizar las secciones
Administrar la taba de símbolos
Manejar los errores.
Un
compilador es que traduce de un Lenguaje de alto nivel a uno de bajo nivel.
FASES DE LOS COMPILADORES
Analizando en detalle el proceso de compilación, se divide en dos grandes fases, una de Análisis y la otra de Síntesis.
Fase de Análisis:
Se
encarga de revisar que los tokens estén ubicados y agrupados de acuerdo a la
definición del lenguaje.
Fase de Síntesis:
Se lleva el
código del programa fuente a un código interno para poder trabajar más
fácilmente sobre él. Esta representación interna debe tener dos propiedades,
primero debe ser fácil de representar y segundo debe ser fácil de traducir al
código objeto.
En la etapa que optimizan de código, se busca obtener el código más corto y rápido posible, utilizando distintos algoritmos de optimización.
Etapa de generación de código, se lleva el código intermedio final a código maquina o código objeto, que por lo general consiste en un código maquina re localizable o código ensamblador.
En la etapa que optimizan de código, se busca obtener el código más corto y rápido posible, utilizando distintos algoritmos de optimización.
Etapa de generación de código, se lleva el código intermedio final a código maquina o código objeto, que por lo general consiste en un código maquina re localizable o código ensamblador.
Un compilador suele
generar programas más rápidos y eficientes, ya que el análisis del lenguaje
fuente se hace una sola vez, durante la generación del programa equivalente. En
cambio, un intérprete se ve obligado generalmente a analizar
cada instrucción tantas veces como se ejecute.
Ejemplos:
No hay comentarios:
Publicar un comentario