Qu'est-ce qu'un compilateur ?

Par Bester PCBA

Dernière mise à jour : 2023-10-24

Table des matières

Qu'est-ce qu'un compilateur ?

Un compilateur est un programme informatique utilisé pour traduire les langages de programmation de haut niveau, tels que le C, en langage d'assemblage ou en code machine. Son objectif principal est de convertir un code lisible par l'homme en un format qui peut être exécuté par une plate-forme matérielle spécifique. Le processus consiste à analyser le code source, à rechercher les erreurs et à générer un code machine optimisé.

L'exactitude du compilateur est cruciale dans l'ingénierie logicielle, car elle garantit qu'un compilateur se comporte conformément à la spécification de son langage. Les techniques employées pour assurer l'exactitude du compilateur comprennent l'utilisation de méthodes formelles pendant le développement du compilateur et des tests rigoureux, souvent appelés "validation du compilateur", sur les compilateurs existants.

Il existe différents types de compilateurs en fonction de la plate-forme et du langage qu'ils utilisent. Les compilateurs natifs ou hébergés produisent un résultat qui peut être directement exécuté sur le même ordinateur et le même système d'exploitation que le compilateur lui-même. Les compilateurs croisés, quant à eux, génèrent un code destiné à être exécuté sur une plate-forme différente. Les compilateurs pour machines virtuelles produisent un code destiné à être exécuté sur une machine virtuelle plutôt que directement sur le matériel sous-jacent.

Parmi les autres types de compilateurs figurent les compilateurs source-à-source, qui transforment le code et l'annotent avec des annotations de code parallèle ou des constructions de langage. Les compilateurs de bytecode compilent le code source dans le langage d'assemblage d'une machine théorique, tandis que les compilateurs Just-in-Time (JIT) reportent la compilation au moment de l'exécution pour améliorer les performances. Les compilateurs de matériel, également connus sous le nom d'outils de synthèse, prennent en entrée un langage de description de matériel et produisent une description d'une configuration matérielle.

Termes connexes

Articles connexes

Laisser un commentaire


La période de vérification reCAPTCHA a expiré. Veuillez recharger la page.

fr_FRFrench