Le langage de l’ordinateur
9
4.2 En langage assembleur
Supposons, de façon un peu simplifiée, que l’on soit en présence d’un ordinateur pour lequel
l’instruction machine :
0101010011011010
signifie : additionner (code opération 0101) les valeurs situées aux adresses 010011 et
011010.
Nous pouvons choisir d’exprimer cela sous une forme un peu plus parlante, par exemple :
ADD A, B
Pour que la chose soit réalisable, il suffit de disposer d’un programme capable de convertir le
symbole ADD en 0101 et de remplacer les symboles A et B par des adresses binaires (ici
010011 et 011010).
Sans entrer dans le détail des tâches précises que doit réaliser un tel programme, on voit
bien :
• qu’il doit faire correspondre un code opération à un symbole mnémonique ;
• qu’il doit être capable de décider des adresses à attribuer à chacun des symboles tels que A
et B ; notamment, à la première rencontre d’un nouveau symbole, il doit lui attribuer une
adresse parmi les emplacements disponibles (qu’il lui faut gérer) ; à une rencontre ultérieure
de ce même symbole, il doit retrouver l’adresse qu’il lui a attribuée.
Tous les constructeurs sont en mesure de fournir avec leur ordinateur un programme capable
de traduire un langage du type de celui que nous venons d’évoquer. Un tel langage se nomme
langage d’assemblage ou encore assembleur. Le programme de traduction correspondant se
nomme, lui aussi, assembleur.
Bien qu’ils se ressemblent, tous les ordinateurs n’ont pas exactement le même répertoire
d’instructions machine. Dans ces conditions, chaque modèle d’ordinateur possède son propre
assembleur. D’autre part, même si un tel langage est plus facile à manipuler que le langage
machine, il ne s’en distingue que par son caractère symbolique, pour ne pas dire
mnémonique. Les deux langages (assembleur et langage machine) possèdent pratiquement
les mêmes instructions ; seule diffère la façon de les exprimer. Dans tous les cas, l’emploi de
l’assembleur nécessite une bonne connaissance du fonctionnement de l’ordinateur utilisé. On
exprime souvent cela en disant que ce langage est orienté machine. Réaliser un programme
dans ce langage nécessite de penser davantage à la machine qu’au problème à résoudre.
4.3 En langage évolué
Très vite est apparu l’intérêt de définir des langages généraux utilisables sur n’importe quel
ordinateur et orientés problème, autrement dit permettant aux utilisateurs de penser davantage à leur problème qu’à la machine.
Précédent

- 32/370

Suivant