La sortie d'un compilateur dépend du langage de programmation et de la plate-forme cible. Généralement, un compilateur sort code machine , qui est un ensemble d'instructions directement comprises par l'unité de traitement centrale d'un ordinateur (CPU). Cependant, il peut également produire d'autres sorties:
Sorties communes:
* Fichier exécutable: Il s'agit de la sortie la plus courante, contenant les instructions de code machine prêt à être exécutée par l'ordinateur.
* Fichier d'objet: Ce fichier contient le code compilé pour un seul module ou fichier source. Il peut nécessiter un lien avec d'autres fichiers d'objets pour produire un exécutable complet.
* Code d'assemblage: Certains compilateurs génèrent du code d'assemblage comme étape intermédiaire avant de produire du code machine. Le code d'assemblage est lisible par l'homme et plus facile à comprendre que le code machine.
* Langue intermédiaire (IL): Certaines langues (comme Java et C #) se compilent dans un langage intermédiaire qui est plus tard interprété ou juste à temps compilé par une machine virtuelle.
Sorties moins courantes:
* Fichier de bibliothèque: Certains compilateurs peuvent sortir des bibliothèques contenant des fonctions ou des données pré-compilées qui peuvent être utilisées dans d'autres programmes.
* Fichier d'en-tête: Certains compilateurs génèrent des fichiers d'en-tête contenant des déclarations pour les fonctions et les structures de données définies dans le code source.
* Messages d'erreur: Le compilateur produit également des messages d'erreur lorsqu'il rencontre des erreurs de syntaxe ou d'autres problèmes dans le code source.
Exemple:
Si vous compilez un programme C à l'aide d'un compilateur comme GCC, vous obtiendrez généralement un fichier exécutable avec l'extension `.exe` sur Windows, ou un fichier` .out` sur Linux. Ce fichier exécutable contient les instructions de code machine nécessaire pour que l'ordinateur exécute le programme.
En résumé, la sortie d'un compilateur est le résultat de la traduction du code source en un formulaire que l'ordinateur peut comprendre et exécuter. Le format spécifique de la sortie dépend du compilateur et de la plate-forme cible.
|