¿Qué es un compilador?

| 2 comentarios


Figura 1: Funcionamiento del compilador

Muchas veces, hemos escuchado el término compilador, sobre todo dentro de los campos de estudio que se especializan en la Informática, pero sabemos realmente ¿Qué significa este término tan difundido?

Hoy veremos el concepto de compilador, para qué se utilizan y cómo se clasifican estos pequeños programas, los cuales son los responsables de que existan todas las aplicaciones que utilizamos en nuestros ordenadores a diario.

¿Qué es un compilador?

Un compilador es un pequeño programa informático, que se encarga de traducir (compilar) el código fuente de cualquier aplicación que se esté desarrollando. En pocas palabras, es un software que se encarga de traducir el programa hecho en lenguaje de programación, a un lenguaje de máquina que pueda ser comprendido por el equipo y pueda ser procesado o ejecutado por este.

Un concepto un poco más elaborado es el siguiente: Un compilador es un programa que convierte o traduce el código fuente de un programa hecho en lenguaje de alto nivel, a un lenguaje de bajo nivel (lenguaje de máquina).

Figura 2: Captura del compilador de Borland C++

Partes de un compilador

Básicamente, un compilador cuenta con dos partes fundamentales: El Front End y el Back End. Estas partes se complementan para lograr el objetivo del compilador. A continuación, describiremos cada una de estas partes:

Front End: El Front End es la parte del compilador que interactúa con el usuario y por lo general, es independiente de la plataforma en la que se trabaja. Se encarga de realizar el análisis del código fuente a compilar y verifica que este sea válido, así como también, genera el árbol de derivación y rellena los valores de la tabla de símbolos.

Back End: Esta parte del compilador es la encargada de generar el código en formato de máquina, a partir del trabajo hecho por el Front End.

Figura 3: Captura de pantalla del compilador Free Pascal

Tipos de compiladores

Existen varios tipos de compiladores, los cuales se adecuan a los requerimientos de los programadores. Podemos destacar los compiladores cruzados, compiladores optimizadores, compiladores de una sola pasada y de varias pasadas, compiladores JIT y los conocidos intérpretes, que traducen el código del programa en tiempo real.

Cada uno de estos compiladores, se adecua a un lenguaje en específico o a varios. Algunos son de código abierto, otros son de licencia propietaria. La versatilidad de unos los hace mucho más populares que otros, pero a grandes rasgos, el escoger un determinado compilador dependerá de los requerimientos de cada usuario.

Importancia de los compiladores

La importancia de los compiladores radica en que, sin estos programas no existiría ninguna aplicación informática, ya que son la base de la programación en cualquier plataforma.

  • ismael

    muy buena explicacion me ayudaste en mucho!! gracias :)

  • http://lasgordas alenjandra

    los guapos