Pourquoi l'hexadécimal ?
Fait partie de la section Fondamentaux du Journey Assembly de Coddy — leçon 10 sur 45.
Vous savez maintenant que les ordinateurs utilisent le binaire. Alors, pourquoi les programmeurs en assembleur écrivent-ils rarement du binaire directement ?
Le problème du binaire :
Les nombres binaires sont très longs. Regardez cet exemple :
| Nombre | Binaire |
|---|---|
| 255 | 11111111 |
| 1000 | 1111101000 |
| 65535 | 1111111111111111 |
Écrire de longues chaînes de 1 et de 0 est lent, sujet aux erreurs et difficile à lire.
La solution : l'hexadécimal (base 16).
L'hexadécimal (ou « hex ») utilise 16 symboles :
| Chiffre | Valeur |
|---|---|
| 0-9 | 0 à 9 |
| A | 10 |
| B | 11 |
| C | 12 |
| D | 13 |
| E | 14 |
| F | 15 |
Pourquoi l'hexadécimal est parfait pour les ordinateurs :
Un chiffre hexadécimal représente exactement 4 bits (un demi-octet).
| Bits | Chiffres hexadécimaux nécessaires |
|---|---|
| 4 bits (nibble) | 1 chiffre hexadécimal |
| 8 bits (1 octet) | 2 chiffres hexadécimaux |
| 16 bits (2 octets) | 4 chiffres hexadécimaux |
| 32 bits (4 octets) | 8 chiffres hexadécimaux |
| 64 bits (8 octets) | 16 chiffres hexadécimaux |
Le même nombre, de trois façons :
| Décimal | Binaire | Hexadécimal |
|---|---|---|
| 255 | 11111111 | FF |
| 1000 | 1111101000 | 3E8 |
| 65535 | 1111111111111111 | FFFF |
Remarquez à quel point l'hexadécimal est plus court que le binaire.
Où vous verrez de l'hexadécimal en assembleur :
- Adresses mémoire (comme
0x7FFFou0x402000) - Codes ASCII (comme
0x41pour 'A',0x0apour le saut de ligne)
- Valeurs de registre dans les débogueurs
- Valeurs de couleur (comme
0xFF0000pour le rouge)
L'hexadécimal s'écrit avec un préfixe :
| Préfixe | Exemple | Signification |
|---|---|---|
0x | 0xFF | FF en hexadécimal (255 en décimal) |
$ | $FF | Même chose (utilisé dans certains assembleurs) |
h | FFh | Même chose (style plus ancien) |
Dans ce cours, nous utilisons le préfixe 0x : 0x0a, 0x41, 0xFF.
Essayez vous-même
Cette leçon ne comprend pas de défi de code.
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
1La Machine
Qu'est-ce qu'un CPULa mémoireRegistres vs MémoireFonctionnement des instructionsLe modèle à deux fichiersL'architecture x86-642Systèmes de numération
Pourquoi le binaire ?Nombres binairesDécimal vers binairePourquoi l'hexadécimal ?Hexadécimal vers décimalDécimal vers hexadécimalASCII & Hex