Understanding Number Bases
What Is a Number Base?
A number base (or radix) is the number of unique digits used to represent numbers. Base-10 (decimal) uses digits 0-9. Base-2 (binary) uses 0-1. Base-16 (hexadecimal) uses 0-9 and A-F.
Common Number Bases
Binary (base-2) is fundamental in computing. Octal (base-8) is used in Unix file permissions. Decimal (base-10) is the everyday system. Hexadecimal (base-16) is used for memory addresses, colors, and data encoding.
How Conversion Works
To convert from any base to decimal, multiply each digit by its positional weight (base^position) and sum. To convert from decimal to any base, repeatedly divide by the target base and collect remainders.
Positional Notation
In base-b, the number dₙdₙ₋₁...d₁d₀ equals dₙ×bⁿ + dₙ₋₁×bⁿ⁻¹ + ... + d₁×b + d₀. For example, 1A hex = 1×16 + 10 = 26 decimal.
Applications
Binary is the language of computers. Hex simplifies binary representation (4 binary digits = 1 hex digit). Base-64 encodes binary data as text. Base-36 provides compact alphanumeric identifiers.
Les systèmes de numération
Un système de numération en base b utilise b symboles (0 à b-1). Base 10 (décimal) : 10 chiffres 0-9. Base 2 (binaire) : 0 et 1. Base 8 (octal) : 0-7. Base 16 (hexadécimal) : 0-9 et A-F. La conversion entre bases utilise la division successive : pour convertir 42 en binaire : 42÷2=21r0, 21÷2=10r1, 10÷2=5r0, 5÷2=2r1, 2÷2=1r0, 1÷2=0r1. En lisant les restes de bas en haut : 101010. Chaque position représente une puissance de la base.
Le binaire et l'informatique
L'informatique utilise le binaire car les circuits électriques ont deux états (0/1, off/on). Un bit = un chiffre binaire. Un octet (byte) = 8 bits = 256 valeurs (0-255). Préfixes : kilo (2¹⁰=1.024), méga (2²⁰), giga (2³⁰), téra (2⁴⁰). Les opérations arithmétiques en binaire suivent les mêmes règles qu'en décimal : 1+1=10 (retenue). Le complément à deux représente les nombres négatifs. Les opérations bit à bit (AND, OR, XOR) sont fondamentales en programmation système.
L'hexadécimal en pratique
L'hexadécimal (base 16) est compact : chaque chiffre hex représente 4 bits. FF = 11111111 = 255. Les couleurs web utilisent l'hex : #FF5733 = RGB(255,87,51). Les adresses mémoire sont souvent en hex. Les codes d'erreur système sont en hex. La conversion hex→binaire est directe : chaque chiffre hex = 4 bits. A=1010, B=1011, ..., F=1111. Les programmeuses et programmeurs mémorisent les 16 premières puissances de 2.
Bases historiques
La base 10 (comptage sur les doigts) est universelle. La base 60 (Babyloniens) survit dans le temps (60 secondes, 360°). La base 20 (Mayas, Yoruba) est attestée en Mésopotamie et en Afrique. La base 12 (douzaine) persiste dans le commerce. Les Yuki de Californie utilisaient la base 8 (comptage entre les doigts). Les Papua de Nouvelle-Guinée utilisent des bases allant jusqu'à 27. La diversité des bases reflète la créativité culturelle humaine.
Conversion entre bases
Pour convertir un nombre de base b en décimal : multiplier chaque chiffre par b^position et sommer. Exemple hex : 2AF = 2×16² + 10×16 + 15 = 512+160+15 = 687. Pour convertir du décimal en base b : diviser successivement par b et collecter les restes. 687÷16=42r15(F), 42÷16=2r10(A), 2÷16=0r2 → 2AF. Les fractions en base b se convertissent en multipliant par b et collectant les parties entières successivement.
Les bases en informatique avancée
Les ordinateurs utilisent aussi la base 8 (octal, historique Unix) et la base 64 (encodage de données binaires en texte). Base32 (A-Z, 2-7) pour les codes lisibles. Base58 (Bitcoin) élimine les caractères ambigus (0/O, l/I). La base 85 (ASCII85) encode 4 octets en 5 caractères. Le BCD (Binary Coded Decimal) encode chaque chiffre décimal en 4 bits pour les calculs financiers exacts sans erreurs d'arrondi en virgule flottante.
La base 12 et le dozénal
La base 12 (dozénal) est défendue par le Dozenal Society car 12 a plus de diviseurs (1,2,3,4,6,12) que 10 (1,2,5), facilitant les calculs de fractions. Un douzième, un sixième, un quart, un tiers sont exacts en base 12. Les symboles proposés : ↊ (décimal 10) et ↋ (décimal 11). Le comptage phalangier (pouce sur les 12 phalanges) explique peut-être l'origine historique de la base 12. L'horloge (12 heures) et la douzaine sont des survivances de ce système.
Les nombres en virgule flottante
En informatique, les nombres décimaux sont représentés en virgule flottante IEEE 754 : signe (1 bit), exposant (8 bits float, 11 bits double), mantisse (23 bits float, 52 bits double). Le float a environ 7 chiffres significatifs, le double 15-16. Les erreurs d'arrondi sont inévitables : 0,1 + 0,2 ≠ 0,3 en float. Pour les calculs financiers, utiliser l'arithmétique décimale exacte (BigDecimal en Java, decimal en Python) afin de garantir la précision requise.