Qu'est-ce qu'une base ?
Nous comptons en base 10 : dix chiffres, de 0 à 9, et chaque rang vaut dix fois le précédent (unités, dizaines, centaines…). Une autre base fonctionne de la même façon avec un autre nombre de chiffres :
- binaire (base 2) : deux chiffres, 0 et 1, chaque rang vaut le double du précédent ;
- octal (base 8) : chiffres de 0 à 7 ;
- hexadécimal (base 16) : seize chiffres, de 0 à 9 puis A, B, C, D, E et F pour 10 à 15 ;
- au-delà, jusqu'à la base 36, on continue avec les lettres jusqu'à Z, qui vaut 35.
Pour éviter les confusions, on note la base en indice : 101₂ vaut 5, alors que 101₁₀ vaut cent un. En informatique, on rencontre aussi les préfixes 0b (binaire), 0o (octal) et 0x (hexadécimal), que le convertisseur accepte à la saisie.
Convertir vers le décimal
On multiplie chaque chiffre par la puissance de la base qui correspond à son rang, en partant de la puissance 0 à droite, puis on additionne.
1011₂ = 1 × 2³ + 0 × 2² + 1 × 2¹ + 1 × 2⁰ = 11FF₁₆ = 15 × 16¹ + 15 × 16⁰ = 255Convertir depuis le décimal : les divisions successives
On divise le nombre par la base, puis le quotient par la base, et ainsi de suite jusqu'à obtenir un quotient nul. Les restes, lus du dernier au premier, sont les chiffres du nombre dans la nouvelle base. Pour écrire 13 en binaire :
- 13 ÷ 2 = 6, reste 1
- 6 ÷ 2 = 3, reste 0
- 3 ÷ 2 = 1, reste 1
- 1 ÷ 2 = 0, reste 1
En lisant les restes de bas en haut : 13 = 1101₂. Le calculateur détaille ces divisions vers la base de votre choix.
Regrouper les chiffres par 4 ou par 8
Un nombre binaire se lit mieux en paquets, formés à partir de la droite. Par 4, chaque paquet correspond à un chiffre hexadécimal, puisque 24 = 16 : 1111 1111₂ se lit directement FF₁₆. Par 8, chaque paquet correspond à un octet. De même, un chiffre octal correspond à trois chiffres binaires, puisque 23 = 8. Le regroupement ne change rien à la valeur : il ne sert qu'à la lecture.
| Décimal | Binaire | Hexa |
|---|---|---|
| 9 | 1001 | 9 |
| 10 | 1010 | A |
| 12 | 1100 | C |
| 15 | 1111 | F |
| 16 | 1 0000 | 10 |
Trois exemples
255 = 1111 1111₂ = FF₁₆ = 377₈ : c'est la plus grande valeur d'un octet.
Onze divisions par 2 donnent 111 1110 1010₂. Regroupés par 4, les paquets 111, 1110 et 1010 se lisent 7, E et A : 7EA₁₆. En octal, 2 026 s'écrit 3752₈.
Chaque paire de chiffres hexadécimaux est une composante de 0 à 255 : 1E₁₆ = 30, 90₁₆ = 144 et FF₁₆ = 255. Le nombre entier 1E90FF₁₆ vaut 2 003 199.
L'erreur fréquente : lire les restes dans le mauvais sens
Les divisions de 6 par 2 donnent les restes 0, 1 puis 1. Le premier reste est le chiffre des unités, le plus à droite : il faut lire les restes du dernier au premier. Vérifiez en sens inverse : 1 × 4 + 1 × 2 + 0 × 1 = 6.
Questions fréquentes
Comment convertir un nombre décimal en binaire ?
Divisez-le par 2, puis le quotient par 2, jusqu'à un quotient nul, et lisez les restes du dernier au premier. Pour 13 : restes 1, 0, 1, 1, donc 13 = 1101 en binaire.
Comment convertir un nombre binaire en décimal ?
Multipliez chaque chiffre par la puissance de 2 de son rang, en partant de 2⁰ à droite, et additionnez : 1011 = 8 + 0 + 2 + 1 = 11.
Comment passer du binaire à l'hexadécimal ?
Regroupez les chiffres binaires par 4 en partant de la droite et remplacez chaque paquet par son chiffre hexadécimal : 1111 1111 donne FF, 111 1110 1010 donne 7EA.
Que valent les lettres A à F en hexadécimal ?
A vaut 10, B vaut 11, C vaut 12, D vaut 13, E vaut 14 et F vaut 15. FF vaut donc 15 × 16 + 15 = 255.
Jusqu'à quelle taille le convertisseur fonctionne-t-il ?
Il calcule exactement avec des entiers positifs de 256 chiffres au plus dans la base de départ, soit au moins 256 bits. Les divisions successives sont détaillées jusqu'à 64 lignes.
Une erreur ? Signalez-la, nous la corrigeons.