Notations binaire & hexadécimale

Les bases


Le mot "binaire" nous vient du latin et signifie "deux".

Noter les nombres en binaire signifie que l'on n'utilisera que deux chiffres.
Les chiffres choisis sont 0 et 1.

Le mot "hexadécimal" vient de "hexa", en grec "six" et décimal : "dix".
Exemples :
"hexagone" : six côtés ;
"décimer" un troupeau : tuer 9 bêtes sur dix (il n'en reste que le dixième)
"hexadécimal" vient donc de "seize"

Alors que le système de numération décimal utilise dix chiffres (0 1 2 3 4 5 6 7 8 9)
le système binaire n'utilise que deux chiffres (0 et 1)
le système hexadécimal utilise seize chifres (0 1 2 3 4 5 6 7 8 9 A B C D E F )
Les lettres ABCDEF ont été choisies de façon arbitraire.

On peut employer des minuscules : abcdef.
Un conseil : ne mélangez pas minuscules et majuscules !


Nombres de 0 à 15
écrits en chiffres décimaux.
Les mêmes nombres
écrits en chiffres binaires.
Les mêmes nombres
écrits en chiffres hexadécimaux
0
0000
0
1
0001
1
2
0010
2
3
0011
3
4
0100
4
5
0101
5
6
0110
6
7
0111
7
8
1000
8
9
1001
9
10
1010
A
11
1011
B
12
1100
C
13
1101
D
14
1110
E
15
1111
F
  1. Remarque :
    si on se limite à 4 bits (quatre chiffres), la notation binaire permet d'écrire au plus 16 nombres,
    les nombres de 0 à 15.
  2. Remarque :
    ces nombres de 0 à 15 peuvent s'écrire en hexadécimal avec un seul chiffre (de 0 à F)
    C'est cette propriété qui va nous permettre des simplifications d'écriture.

Cliquez ici pour un tableau plus étendu.

Vous avez dit "simplification" ?


Apparemment, ce n'est pas se simplifier la vie que d'utiliser plus de chiffres pour écrire les nombres !

Eh pourtant si !
Supposez que vous ayez à communiquer oralement ou même par écrit un nombre binaire.

Même s'il n'a que 4 bits, il est plus facile de dire "D" que "1, 1, 0, 1" non ?

Mais quand il s'agit de "1011011001111110 " il n'y a pas photo ! Il vaut mieux dire "B67E" non ?

Ah, vous me demandez comment j'ai fait pour trouver l'écriture hexadécimale de "1011011001111110" ?

C'est simple, j'ai divisé ce nombre binaire en groupes de quatre chiffres : "1011 - 0110 - 0111 - 1110"
J'ai évalué chacun de ces groupes :

1011 : 1 + 2 + 0 + 8 = 11décimal = Bhexadécimal
0110 : 0 + 2 + 4 + 0 =  6décimal = 6hexadécimal
0111 : 1 + 2 + 4 + 0 =  7décimal = 7hexadécimal
1110 : 0 + 2 + 4 + 8 = 14décimal = Ehexadécimal

Je repose ma question : d'après vous, si on veut éviter les erreurs de transcription,
vaut-il mieux communiquer en binaire "1011 0110 0111 1110 " ou en hexadécimal : "B67E" ?

Quel nombre mémorisez-vous plus facilement : "1011 0110 0111 1110 " ou "B67E" ?

A l'unanimité nous déclarons l'hexadécimal adopté !

Notations pour préciser la base de numération

1234décimal (base 10) s'écrit : 123410
1AF6hexadécimal (base 16) s'écrit 1AF616 ou 0x1AF6 dans certains langages de programmation.
Quant au binaire...ne nous compliquons pas la vie...


Conversion hexadécimal vers décimal

Prenons le cas du nombre précédent "1011 0110 0111 1110 "

Vous voyez-vous aborder joyeusement sa conversion directe en décimal ?

0+2+4+8+16+32+64+0+0+512+1024+0+4096+...je fatigue, continuez sans moi !

Je préfère le convertir d'abord en hexadécimal (voir ci-dessus)
C'est B67E
Avec B = 11 déc. et E = 14 déc.

11×163 + 6×162 + 7×16 + 14
Ma calculatrice donne 46 718

Et puisqu'on parle de calculatrice, le mieux, à mon avis,
pour convertir les grands nombres,
utilisez ses capacités de conversion.


Calculatrice livrée avec "Windows"

La case "Déc" est ici cochée,
si vous entrez un nombre décimal, il vous suffira de cocher la case "Hex"
pour voir immédiatement s'afficher son équivalent écrit en hexadécimal.

Pour la conversion inverse, cochez d'abord la case "Hex", entrez le nombre en hexadécimal,
puis cochez la case "Dec" pour voir son équivalent décimal,
ou la case "Bin" pour voir son équivalent binaire,
ou la case "Oct" pour voir son équivalent écrit en octal..

Opérations semblables pour obtenir les autres conversions.

Autre exemple ici :