MathLvl
Question transversaleMathsNSITransmettre et compresser

Comment un message peut-il se réparer tout seul quand un bit a été faussé ?

Le code de Hamming (7, 4) ajoute 3 bits de contrôle à 4 bits de données. Les trois tests de parité, lus comme un nombre binaire, donnent directement la position du bit faussé : 101₂ = 5. Avec 3 bits on décrit 2³ = 8 situations, exactement « aucune erreur » ou une erreur parmi 7 positions.

Grand oral session 2027 : exposé de 10 minutes debout, puis 10 minutes d'échange, sans calculatrice. Plan prévu pour 9,5 min.

Pourquoi cette question : un modèle d'introduction

Le jury attend que vous expliquiez pourquoi vous avez choisi la question. Inspirez-vous de ce modèle, mais racontez votre propre parcours.

J'ai appris que les sondes Voyager, lancées en 1977, envoient encore des données depuis plus de 20 milliards de kilomètres, avec un signal extrêmement faible. Les erreurs sont inévitables et il est impossible de redemander chaque message. J'ai voulu comprendre comment un message peut être corrigé par le récepteur lui-même, et j'ai découvert l'idée lumineuse de Richard Hamming.

L'enjeu et les notions du programme

Construire un code correcteur par des tests de parité et justifier par un dénombrement qu'il est optimal.

Mathématiques

  • Écriture binaire des entiers (seconde)
  • Dénombrement, puissances de 2 (terminale)
  • Parité, raisonnement logique (seconde)

Numérique et sciences informatiques

  • Transmission de données (première)
  • Opérateur xor, booléens (première)

Le plan de l'exposé en 9,5 min

  1. 1. Introduction

    1 min

    Un bit de parité détecte une erreur mais ne dit pas où elle est. Problématique : combien de bits de contrôle faut-il pour localiser, donc corriger, une erreur unique ?

  2. 2. Mathématiques : localiser par des tests binaires

    4 min

    On numérote les 7 positions de 1 à 7 et on écrit chaque numéro en binaire sur 3 bits. Les positions 1, 2 et 4 (puissances de 2) portent les bits de contrôle, les autres les 4 bits de données. Le contrôle c₁ rend paire la somme des positions dont le numéro a un 1 en dernière position (1, 3, 5, 7) ; c₂ celle des positions 2, 3, 6, 7 ; c₄ celle des positions 4, 5, 6, 7.

    Exemple : données 1011, placées en positions 3, 5, 6, 7. On obtient le mot 0110011. Supposons que la position 5 soit inversée : on reçoit 0110111. Le récepteur refait les trois tests : le premier échoue (1), le deuxième réussit (0), le troisième échoue (1). Lu de droite à gauche, 101₂=5 : l'erreur est en position 5, on l'inverse.

    Pourquoi ça marche : une erreur en position j fait échouer exactement les tests correspondant aux 1 de l'écriture binaire de j. Optimalité : avec r bits de contrôle, on distingue 2^(r) situations, qui doivent couvrir « pas d'erreur » et une erreur dans chacune des n positions : 2^(r)≥ n+1. Pour r=3, n=7 : égalité. Le code est parfait.

  3. 3. NSI : coût et usages

    3 min

    Le code (7, 4) transmet 4 bits utiles sur 7 : un rendement de 57 %. Avec 4 bits de contrôle, on protège 15 positions, dont 11 de données (rendement 73 %). Plus le bloc est long, plus le code est économe, mais il ne corrige toujours qu'une erreur par bloc.

    Les mémoires des serveurs (mémoire ECC) utilisent des codes de cette famille, avec un bit de plus pour détecter les erreurs doubles. Les communications spatiales, les QR codes et les CD utilisent des codes plus puissants (Reed-Solomon), qui corrigent des rafales d'erreurs.

  4. 4. Conclusion

    1,5 min

    Le code de Hamming corrige une erreur en faisant de trois tests de parité l'adresse binaire du bit faussé. Le dénombrement 2^(r)≥ n+1 montre que 3 bits pour 7 positions est le mieux possible. J'ouvre sur la distance de Hamming, qui généralise cette idée à plusieurs erreurs.

Ce que j'écris au tableau

Pas de calculatrice ni de support numérique : un calcul clé écrit au tableau rend l'exposé concret et montre la solidité des connaissances.

c₁: {1,3,5,7} c₂: {2,3,6,7} c₄: {4,5,6,7}
1011→0110011 reçu 0110111: tests (1,0,1)→101₂=5 2³=7+1

Conclusion : la réponse à la question

Un message se répare seul quand ses bits de contrôle désignent l'emplacement de l'erreur. L'écriture binaire fait le travail, et un dénombrement prouve que le code de Hamming n'a aucun bit superflu.

Les questions probables du jury

Pendant les 10 minutesd'échange, le jury vous fait préciser et approfondir, sur tout le programme de vos spécialités en lien avec la question.

Pourquoi placer les contrôles en positions 1, 2 et 4 ?

Ces numéros n'ont qu'un seul 1 en binaire : chaque contrôle n'intervient que dans son propre test.

Que se passe-t-il s'il y a deux erreurs ?

Les tests désignent une mauvaise position : le décodeur « corrige » un troisième bit et aggrave l'erreur.

Combien de bits de contrôle pour protéger 31 positions ?

2⁵=32=31+1 : 5 bits.

Quel est le rendement du code (7, 4) ?

4/7 ≈ 57 % de bits utiles.

Que lit-on si aucun test n'échoue ?

000 : aucune erreur détectée.

Les pièges qui coûtent des points

  • Lire le numéro binaire dans le mauvais ordre.
  • Croire que le code corrige plusieurs erreurs.
  • Oublier la situation « aucune erreur » dans le dénombrement.

Revoir les notions

Autres questions : transmettre et compresser

Toutes les questions maths-nsi →

Préparer l'oral, pas seulement le contenu

Gestion des 20 minutes de préparation, usage du tableau, posture debout, réponses au jury : la méthode complète, conforme aux règles de la session 2027.

Méthode : traiter une question de Grand oral →