Home

compilador

Un compilador es un programa que traduce código fuente escrito en un lenguaje de alto nivel a una forma ejecutable o a una representación intermedia. Su objetivo es permitir que el software pueda ejecutarse en una plataforma específica, a menudo optimizando el código durante la traducción.

El proceso de compilación suele dividirse en una parte frontal y una parte trasera. El front end

Los compiladores pueden ser nativos o cruzados. Un compilador nativo genera código para la misma arquitectura

En la práctica, la distinción entre compiladores y intérpretes radica en cuándo se realiza la traducción y

La historia de la compilación se remonta a la década de 1950, con lenguajes como Fortran y

realiza
el
análisis
léxico
y
sintáctico,
construye
una
representación
estructurada
del
programa
y
realiza
la
comprobación
semántica
y
la
resolución
de
símbolos.
El
back
end
toma
esa
representación,
aplica
optimización
y
genera
código
objetivo,
que
puede
ser
código
máquina,
ensamblador
o
bytecode
para
una
máquina
virtual.
en
la
que
se
ejecuta,
mientras
que
un
compilador
cruzado
produce
código
para
una
arquitectura
distinta.
También
existen
enfoques
como
la
compilación
en
tiempo
de
ejecución
(JIT),
que
genera
código
durante
la
ejecución,
o
enfoques
puramente
interpretativos
que
ejecutan
código
fuente
o
bytecode
sin
una
traducción
previa
completa.
ejecución:
los
compiladores
traducen
todo
el
programa
antes
de
ejecutarlo,
mientras
que
los
intérpretes
ejecutan
directamente,
o
ejecutan
código
intermedio
con
un
intérprete.
Los
compiladores
modernos
incorporan
optimización,
generación
de
código
para
diferentes
plataformas
y
herramientas
de
diagnóstico
para
errores
y
advertencias.
Lisp.
Hoy
existen
numerosos
compiladores
para
muchos
lenguajes
y
plataformas,
como
GCC,
Clang,
MSVC
y
el
compilador
de
Java.