O documento descreve o que é um compilador, suas principais características e etapas. Um compilador converte código-fonte escrito em uma linguagem de programação de alto nível para uma linguagem de baixo nível, como assembly ou código de máquina. As principais etapas de um compilador incluem análise léxica, análise sintática, geração de código intermediário e geração de código final. O compilador verifica a sintaxe e semântica do código-fonte e o otimiza para gerar