Comment un seul chiffre en plus peut-il repérer une faute de frappe ou un bit inversé ?
Un mathématicien en avait tellement assez que son ordinateur gâche ses calculs du week-end qu'il lui a appris à réparer ses propres erreurs.
▶ Lancer l'histoireEn ajoutant un peu de redondance : une information en plus que le destinataire peut comparer avec le reste. La version la plus simple, c'est le bit de parité. Avant d'envoyer un groupe de bits, on en ajoute un, choisi pour que le nombre total de 1 soit pair. Si un seul bit s'inverse en route, le compte devient impair et le destinataire sait que quelque chose cloche. Le numéro de ta carte bancaire joue un tour du même genre : son dernier chiffre est une clé de contrôle calculée avec l'algorithme de Luhn, qui repère toute erreur sur un seul chiffre et presque toutes les inversions de deux chiffres voisins.
Détecter n'est pas réparer, cela dit. La parité ne peut pas dire quel bit est faux, donc il faut renvoyer les données, et si deux bits s'inversent, le compte paraît bon et l'erreur passe inaperçue.
Un bit de parité
- Ajoute un seul bit
- Repère n'importe quel bit inversé seul
- Rate deux inversions
- Ne dit pas quel bit : on renvoie tout
Hamming(7,4)
- Ajoute trois bits de parité à quatre bits de données
- Les contrôles se chevauchent
- Les contrôles ratés désignent le bit fautif
- On le remet en place, sans renvoi
Cette limite rendait Richard Hamming fou. À la fin des années 1940, aux Bell Labs, son ordinateur à relais s'arrêtait et faisait clignoter ses lampes pour un opérateur quand il trouvait une erreur, mais le week-end, sans personne, il abandonnait tout simplement son calcul pour passer au suivant. « Si la machine peut détecter une erreur, pestait-il, pourquoi ne peut-elle pas trouver où elle est et la corriger ? » Sa réponse, le code de Hamming publié en 1950, utilise plusieurs bits de parité qui se chevauchent, de sorte que la combinaison des contrôles ratés désigne directement le bit fautif. Il protège encore la mémoire des ordinateurs aujourd'hui.
Quiz
0/3
Récap
Un bit de parité peut te dire que quelque chose a cassé ; plusieurs bits de parité qui se chevauchent peuvent te dire où.
Le fait surprenant · Le dernier chiffre d'une carte bancaire est une clé de contrôle qui repère toute erreur sur un seul chiffre.
Liens
- 💡 Comment 0 et 1 suffisent-ils à écrire tous les nombres et toutes les lettres ?
- 🛠️ Comment un CD rayé ou une sonde lointaine corrigent-ils des erreurs que personne n'a vues ?
- 🏺 Comment a-t-on découvert les manuscrits de la mer Morte ?
- 🔳 Comment un code QR peut-il encore marcher quand il en manque un morceau ?
Sources (3)
Pas de source, pas d'affirmation. Chacun des 21 faits de cette leçon renvoie à au moins une de ces sources.