Skip to main content
Binaire
101010

Guide du système binaire

Binary Number System

The binary system uses only two digits: 0 and 1. This is the basic language of computers, where 0 means no electricity (off) and 1 means electricity (on). Binary numbers are longer than decimal, but easier to implement in digital electronics. A byte is 8 bits (e.g., 10101010₂ = 170₁₀).

Conversion en binaire

Pour convertir du décimal en binaire, divisez par 2 et notez les restes. Exemple : 42 ÷ 2 = 21 reste 0, 21 ÷ 2 = 10 reste 1, 10 ÷ 2 = 5 reste 0, 5 ÷ 2 = 2 reste 1, 2 ÷ 2 = 1 reste 0, 1 ÷ 2 = 0 reste 1. En lisant de bas en haut : 101010₂ = 42₁₀.

Applications en programmation

Le binaire sert aux masques de bits, aux permissions de fichiers (ex. chmod 755 = 111101101), aux adresses IPv4, aux couleurs RVB (rouge #FF0000 = 11111111 00000000 00000000). La RAM est adressée par bits. Booléen : vrai=1, faux=0.

IPv6 n'est pas quatre fois plus grand qu'IPv4. Il est 2⁹⁶ fois plus grand

Les nombres de bits sont des exposants, et les exposants déjouent l'intuition. Une adresse IPv6 compte quatre fois plus de bits qu'une adresse IPv4, ce qui suggère une capacité quadruplée. Elle est en réalité environ 79 quadrilliards de fois plus grande, car chaque bit supplémentaire double la plage.

Comment ça marche

  • Convertit entre binaire, décimal, hexadécimal et octal.
  • Indique combien de valeurs distinctes un nombre donné de bits peut représenter.
  • Rend le doublement explicite : c'est la part qui résiste le plus à l'estimation.
valeurs = 2^bits

 8 bits →                256      un octet, 0–255
16 bits →             65 536      un numéro de port
32 bits →      4 294 967 296      une adresse IPv4
64 bits → 1,8 × 10¹⁹              horodatages en nanosecondes

un bit de plus double toujours la plage

Exemple chiffré

Comparer des espaces d'adressage et voir d'où viennent les limites familières.

  1. IPv4 fait 32 bits : 2³² = 4,29 milliards d'adresses
  2. IPv6 fait 128 bits : 2¹²⁸ ≈ 3,4 × 10³⁸
  3. le rapport vaut 2¹²⁸ ÷ 2³² = 2⁹⁶
  4. 2⁹⁶ ≈ 7,9 × 10²⁸ — et non 4

Quatre fois plus de bits, c'est 2⁹⁶ fois plus d'adresses. La même arithmétique explique l'omniprésence de 255 : huit bits donnent 256 valeurs, numérotées de 0 à 255.

Lire le résultat

  • L'hexadécimal existe parce qu'il est du binaire compact. Un chiffre hexadécimal vaut exactement quatre bits, donc deux chiffres font un octet — d'où l'écriture des couleurs en #RRGGBB et le fait que 0xFF vaille 255, soit 11111111.
  • L'octal vaut trois bits par chiffre, d'où les groupes de trois des permissions Unix : 755, ce sont trois groupes de drapeaux lecture, écriture et exécution compactés en un chiffre chacun.
  • L'épuisement d'IPv4 était prévisible à partir du seul exposant. 32 bits plafonnent l'internet à 4,29 milliards d'adresses quelle que soit l'allocation, et ce plafond était visible des décennies avant d'être atteint.
  • Les entiers signés consacrent un bit au signe, ce qui divise par deux la plage positive. Une valeur signée sur 32 bits s'arrête à 2 147 483 647 et non 4 294 967 295 — source d'un très grand nombre de bogues de dépassement.

Questions fréquentes

Pourquoi un octet va-t-il de 0 à 255 et non de 1 à 256 ?
Parce que le comptage part de zéro. Huit bits donnent 2⁸ = 256 motifs distincts ; le premier représente zéro, donc le dernier représente 255. Le compte est 256, le maximum 255.
Pourquoi l'hexadécimal plutôt que le binaire directement ?
De la densité sans perte. Chaque chiffre hexadécimal correspond exactement à quatre bits : un octet fait toujours deux caractères et la conversion est mécanique. Écrire 11111111 au lieu de FF est quatre fois plus long et bien plus facile à mal compter.