Un compilateur est un logiciel particulier qui traduit un programme écrit dans un langage de haut niveau (par le programmeur) en instructions exécutables (par un ordinateur). C'est donc  l'instrument fondamentale à la base de toute réalisation informatique. ce cours a pour but de présenter les principes de base inhérents à la réalisation des compilateurs à savoir : analyse lexicale, analyse syntaxique, analyse sémantique, génération de code,  et les outils fondamentaux utilisés pour effectuer ces analyses : fondements de base de la théorie des langages (grammaires, automates, ...), méthodes algorithmiques d'analyse, ...