Le code binaire lui-même n'est pas directement des instructions. C'est la *représentation* des instructions. Les instructions sont codées sous forme de séquences de chiffres binaires (0 et 1) que l'unité centrale (CPU) de l'ordinateur peut comprendre et exécuter. Ces séquences correspondent au code machine ou instructions machine .
Pensez-y comme ceci :
* Instructions lisibles par l'homme : Vous pouvez écrire un programme dans un langage comme Python ou C++. Ceux-ci sont compréhensibles par les humains.
* Langage assembleur : Il s'agit d'un langage de bas niveau qui utilise des mnémoniques (courtes abréviations) pour représenter les instructions machine. C'est un pas de plus vers la compréhension de l'ordinateur.
* Code machine (binaire) : Le langage assembleur est ensuite traduit (assemblé) en code machine :des chaînes de 0 et de 1. C'est le seul langage que le CPU comprend directement. Chaque instruction, comme l'ajout de deux nombres ou le passage à une partie différente du programme, se voit attribuer un code binaire spécifique. Ce code est déterminé par l'architecture du processeur (par exemple, x86, ARM).
Par exemple, une simple instruction d’addition pourrait ressembler à ceci dans différentes représentations :
* Assemblage (exemple, peut varier selon l'architecture) : `ADD AX, BX` (Ajouter le contenu du registre BX au registre AX)
* Code machine (binaire, par exemple, varie considérablement en fonction de l'architecture) : `00000000 00001011 00000000 00000001` (Il s'agit d'un *exemple entièrement fabriqué* à des fins d'illustration. Le code machine réel est beaucoup plus complexe et spécifique à l'architecture.)
Le code binaire spécifique d'une instruction dépend fortement de l'architecture du processeur et du jeu d'instructions. Différents processeurs ont des jeux d'instructions différents, ce qui signifie qu'ils comprennent différents codes binaires. Il n'existe pas de code binaire universel pour une instruction donnée.
|