La numération hexadécimale ajoute, pour identification, le préfixe neural '0x' à un nombre. La valeur 0x10AA, par exemple, devient 4 266 quand on la traduit en langage décimal.
Dans la table ci-dessous on voit la signification des chiffres inclus dans l'expression décimale 27 953, selon son rang dans la composition de cette même expression.
10 000 | 1 000 | 100 | 10 | 1 |
---|---|---|---|---|
104 | 103 | 102 | 101 | 100 |
2 | 7 | 9 | 5 | 3 |
Donc, le nombre 27 953 n'est, en réalité, qu'une présentation simplifiée de l'expression originale ci-dessous.
2 x 104 + 7 x 103 + 9 x 102 + 5 x 101 + 3 x 100
Les symboles utilisés dans le monde décimal sont: 1,2,3,4,5,6,7,9 et 0. La suite contient, au total, dix caractères.
La base hexadécimale en compte 16: 1,2,3,4,5,6,7,8,9,A,B,C,D,E,F et 0.
Les chiffres A,B,C,D,E et F (a,b,c,d,e,f) représentent respectivement les nombres décimaux: 10,11,12,13,14 et 15.
Le nombre 0x123 est égal à: 1 x 162 + 2 x 161 + 3 x 160.
Le nombre 0xabc est égal à: 10 x 162 + 11 x 161 + 12 x 160.
Le nombre 0xe5f est égal à: 14 x 162 + 5 x 161 + 15 x 160.
La table ci-dessous montre la décortication de la valeur 0x10AA.
4 096 | 256 | 16 | 1 |
---|---|---|---|
163 | 162 | 161 | 160 |
1 | 0 | A | A |
Convertissons le 0x10AA en décimal.
1 x 163 + 0 x 162 + A x 161 + A x 160
= 1 x 4 096 + 0 x 256 + 10 x 16 + 10 x 1
= 4 096 + 0 + 160 + 10
= 4 266
Exemple 1
- Le nombre 0x64 à convertir en décimal:
Rang | 256 | 16 | 1 |
---|---|---|---|
Puissance | 162 | 161 | 160 |
Nombre | 0 | 6 | 4 |
Le résultat est:
6 x 16 + 4 x 1
= 96 + 4
= 100
Exemple 2
- Soit 0x100 un nombre à décimaliser.
Rang | 256 | 16 | 1 |
---|---|---|---|
Puissance | 162 | 161 | 160 |
Nombre | 1 | 0 | 0 |
C'est: 1 x 256 = 256
Exemple 3
- 0x41f à convertir en décimal:
Rang | 256 | 16 | 1 |
---|---|---|---|
Puissance | 162 | 161 | 160 |
Nombre | 4 | 1 | f |
Le résultat final:
4 x 256 + 1 x 16 + 15 x 1
= 1024 + 16 + 15
= 1055
Il est temps de prendre la voie opposée (le sens inverse, déterminer l'hexadécimal à partir d'un décimal).
1- Soit 1 055 un nombre décimal.
Ce décimal se situe entre 162 et 163.
163 est supérieur à 1 055. Sa récompense est d'être négligé.
Mon 1 055 contient 4 fois 162 plus 31.
Ce 31 couvrira la colonne 161. Il contient 1 fois 16. Le reste est, donc, f.
Que dois-je faire avec ce résidu f (inférieur à 16)? Je le place, tout simplement, au rang des unités.
Mon hex s'écrit donc: 4 x 162 + 1 x 161 + f x 160
= 0x41f, comme étalé ci-dessous.
Rang | 256 | 16 | 1 |
---|---|---|---|
Puissance | 162 | 161 | 160 |
Nombre | 4 | 1 | f |
2- Convertir le décimal 255 en hex:
Le nombre 255 se situe entre 162 et 61.
255 contient f fois 16 est une fois f.
= f x 161 + f x 160
= 0xff
Rang | 256 | 16 | 1 |
---|---|---|---|
Puissance | 162 | 161 | 160 |
Nombre | 0 | f | f |
klik hier Binaire, octal