Stations de travail en ligne OnWorks Linux et Windows

Logo

Hébergement gratuit en ligne pour les postes de travail

<Précédent | Table des matières | Suivant>

Qu'est-ce que la compilation ?

En termes simples, la compilation est le processus de traduction code source (la description lisible par l'homme d'un programme écrit par un programmeur) dans la langue native du processeur de l'ordinateur.

Le processeur de l'ordinateur (ou Processeur) fonctionne à un niveau très élémentaire, exécutant des programmes dans ce qu'on appelle Language de machine. Il s'agit d'un code numérique qui décrit de très petites opérations, telles que « ajouter cet octet », « pointer vers cet emplacement en mémoire » ou « copier cet octet ».


Chacune de ces instructions est exprimée en binaire (uns et zéros). Les premiers programmes informatiques ont été écrits à l'aide de ce code numérique, ce qui peut expliquer pourquoi les programmeurs qui l'ont écrit fumaient beaucoup, buvaient des litres de café et portaient des lunettes épaisses.

Ce problème a été surmonté par l'avènement de langage d'assemblage, qui a remplacé les codes numériques par des caractères (légèrement) plus faciles à utiliser mnémotechnique tels que CPY (pour copier) et MOV (pour déplacer). Les programmes écrits en langage assembleur sont traités en langage machine par un programme appelé un assembleur. Le langage assembleur est encore utilisé aujourd'hui pour certaines tâches de programmation spécialisées, telles que pilotes de périphérique ainsi que systèmes embarqués.

Nous arrivons ensuite à ce qu'on appelle langages de programmation de haut niveau. Ils sont appelés ainsi car ils permettent au programmeur de se soucier moins des détails de ce que fait le processeur et plus de résoudre le problème en question. Les premiers (développés dans les années 1950) comprenaient Fortran (conçu pour des tâches scientifiques et techniques) et COBOL (conçu pour les applications commerciales). Les deux sont encore peu utilisés aujourd'hui.

Bien qu'il existe de nombreux langages de programmation populaires, deux prédominent. La plupart des programmes écrits pour les systèmes modernes sont écrits soit en C or C + +. Dans les exemples qui suivent, nous allons compiler un programme C.

Les programmes écrits dans des langages de programmation de haut niveau sont convertis en langage machine en les traitant avec un autre programme, appelé un compilateur. Certains compilateurs traduisent des instructions de haut niveau en langage assembleur, puis utilisent un assembleur pour effectuer la dernière étape de la traduction en langage machine.

Un processus souvent utilisé en conjonction avec la compilation est appelé lien. De nombreuses tâches courantes sont exécutées par les programmes. Prenez, par exemple, l'ouverture d'un fichier. De nombreux programmes effectuent cette tâche, mais il serait inutile que chaque programme implémente sa propre routine pour ouvrir les fichiers. Il est plus logique d'avoir un seul élément de programmation qui sache ouvrir des fichiers et de permettre à tous les programmes qui en ont besoin de le partager. Le soutien aux tâches courantes est accompli par ce qu'on appelle bibliothèques. Ils contiennent plusieurs routines, chacun effectuant une tâche commune que plusieurs programmes peuvent partager. Si on regarde dans le / lib ainsi que / usr / lib répertoires, nous pouvons voir où beaucoup d'entre eux vivent. Un programme appelé Liens est utilisé pour former les connexions entre la sortie du compilateur et les bibliothèques requises par le programme compilé. Le résultat final de ce processus est la fichier de programme exécutable, prêt à l'emploi.


 

Meilleur système d'exploitation Cloud Computing chez OnWorks :