Systèmes de numération - 2 - l'hexadécimal

par Tom
le 06/01/2020

Note : j'ai écris ce cours y'a 4 ans donc il est peut-être pas au même niveau que les autres cours plus récents.

Sommaire


Temps de lecture estimé : 30min


Idée

Le binaire, c'est bien pratique : on peut coder des nombres juste avec des 0 et des 1. C'est bien pour les signaux électriques et tout le bazar, mais dans la vie de tous les jours c'est pas bien facile d'utilisation.

On utilise couramment la base 10, autrement connue sous le nom de système décimal (déci = 10). Cette base, vous la connaissez car c'est avec elle que vous comptez, plus précisément avec ses 10 chiffres ; 0, 1, 2, 3, 4, 5, 6, 7, 8 et ce bon vieux 9.

Le problème c'est qu'en informatique, tout est basé sur le binaire, et étant une base d'indice 2, c'est plus aisé d'encoder les informations sur un nombre puissance de 2. On utilise donc souvent la base 16, appelé système hexadécimal (hexa = 6, déci = 10, 16 = 6 + 10) car 16 est un multiple de 2, et qu'il permet de représenter 8 bits avec seulement 2 chiffres.

Ça paraît simple, mais il y a un autre problème : en base 10, on utilise 10 chiffres. En base 2 (binaire) on utilise seulement 2 chiffres : 0 et 1. Mais du coup, en base 16, il faut 16 chiffres. OK, 0 1 2 3 4 5 6 7 8 9.. quoi après ? Les mathématiciens ont, comme souvent, fait au plus simple : on prend des lettres de l'alphabet.

Ce qui donne :
0 1 2 3 4 5 6 7 8 9 A B C D E F


Correspondances avec le binaire et le décimal

On peut établir une liste de correspondances entre la base 10 et la base 16 (voire même la base 2) :

Binaire
(base 2)
Décimal
(base 10)
Hexadécimal
(base 16)
000
111
1022
1133
10044
10155
11066
11177
100088
100199
101010A
101111B
110012C
110113D
111014E
111115F

Comme vous pouvez le voir, le plus grand chiffre en hexadécimal est $F$, et il correspond à $15$ en décimal et $1111$ en binaire : F est donc encodé sur 4 bits ($F_{hex} = 1111_{bin}$, 4 chiffres binaires = 4 bits).


Conversion

Pour convertir un nombre décimal en hexadécimal, la méthode est similaire au binaire, sauf que cette fois on divise par 16.