Qué es un compilador

Idea central

Un compilador es un programa que traduce el código fuente que escribe una persona (en un lenguaje de alto nivel como C) al código máquina que la CPU sabe ejecutar, comprobando de paso que el programa está bien formado.

Desarrollo

El proceso ocurre en fases: análisis léxico (trocear el texto en tokens), análisis sintáctico (construir el árbol según la gramática del lenguaje), análisis semántico (comprobar tipos y reglas), generación de código intermedio, optimización y emisión del código máquina final.

A diferencia de un intérprete, que ejecuta el código sobre la marcha, el compilador produce un ejecutable independiente: se traduce una vez y se ejecuta muchas, lo que suele dar programas más rápidos a cambio de un paso previo de compilación. En C, ese compilador es típicamente gcc o clang.

Conexiones