Les ingénieurs qui conçoivent les ordinateurs ou qui développent du logiciel de bas niveau doivent fréquemment manipuler des données représentées en binaire. Or, les ordinateurs modernes travaillent sur des valeurs de 32 ou 64 bits qui peuvent être fastidieuses à lire ou à écrire sans erreur. Nous serions plus à l’aise en décimal, mais la conversion entre binaire et décimal n’est pas immédiate.
Un compromis couramment utilisé par les ingénieurs est de travailler en base 16, également nommée numération hexadécimale. En effet, un nombre représenté en base 16 nécessite quatre fois moins de chiffres qu’en binaire. La conversion entre binaire et hexadécimal est triviale.
La numération hexadécimale est un moyen, pour des être humains, de représenter des données sous une forme proche du binaire, mais plus facile à manipuler. Gardez à l’esprit que les ordinateurs utilisent toujours le binaire.
La numération hexadécimale utilise seize symboles : les chiffres de 0 à 9 et les lettres de A à F. Un chiffre hexadécimal seul représente un nombre compris entre 0 et 15 selon le tableau de conversion suivant :
Hexadécimal | Décimal | Hexadécimal | Décimal | |
---|---|---|---|---|
0 | 0 | 8 | 8 | |
1 | 1 | 9 | 9 | |
2 | 2 | A | 10 | |
3 | 3 | B | 11 | |
4 | 4 | C | 12 | |
5 | 5 | D | 13 | |
6 | 6 | E | 14 | |
7 | 7 | F | 15 |
Un nombre supérieur ou égal à seize s’écrit comme une séquence de chiffres, chacun associé à un poids différent en fonction de sa position. Le chiffre le plus à droite a toujours un poids égal à 1. En continuant de droite à gauche, le poids d’un chiffre est égal à seize fois le poids du chiffre précédent. Par exemple, le nombre se décompose de la manière suivante :
4096 | 256 | 16 | 1 |
---|---|---|---|
5 | C | 3 | E |
La valeur de ce nombre s’obtient en multipliant la valeur de chaque chiffre par le poids qui lui est associé, et en additionnant les produits :
Ou encore :
Dans le cas général, un nombre entier naturel s’écrit en hexadécimal comme une séquence de chiffres hexadécimaux tels que :
La conversion du binaire à l’hexadécimal est facilitée par le fait que seize est une puissance de deux (). Par conséquent, les seize chiffres hexadécimaux utilisent exactement les seize combinaisons possibles de quatre bits :
Hexadécimal | Binaire | Hexadécimal | Binaire | |
---|---|---|---|---|
0 | 0000 | 8 | 1000 | |
1 | 0001 | 9 | 1001 | |
2 | 0010 | A | 1010 | |
3 | 0011 | B | 1011 | |
4 | 0100 | C | 1100 | |
5 | 0101 | D | 1101 | |
6 | 0110 | E | 1110 | |
7 | 0111 | F | 1111 |
Pour les nombres supérieurs à quinze, la conversion entre binaire et hexadécimal consiste simplement à associer chaque chiffre hexadécimal à un groupe de quatre bits consécutifs. Par exemple, le nombre se décompose de la manière suivante :
5 | C | 3 | E |
0101 | 1100 | 0011 | 1110 |
Nous pouvons donc écrire :