La notation binaire

Mathias Wandel a construit une calculatrice en bois, basée sur la notation binaire !

Ceux qui ont vu le film Matrix se rapellent des suites constituées des chiffres 0 et 1 qui défilent sur l’écran presque interminablement, comme par exemple 10011100100001101010111111. Beaucoup appellent cela un « nombre binaire », mais cette appellation est mal choisie, mieux est de l’appeler « écriture binaire d’un nombre naturel ». Pour mieux comprendre cette écriture bizarre faisons un petit détour.

Les nombres naturels

Les nombres naturels sont le premiers que nous avons appris à l’école : zéro, un, deux, trois, quatre,… Il y en a une infinité, car à chaque nombre on peut ajouter 1 :

zéro = 0 , un = 1 , deux = 1+1 , trois = 1+1+1, quatre = 1+1+1+1 , etc.

Cette écriture en forme de somme est essentiellement la même que l’écriture primitive par bâtons qu’on trouve sur les murs des prisons : par exemple |||| pour quatre ou |||| ||| pour huit. Elle prendrait trop de place pour des grands nombres. Pour éviter cela on utilise une ruse, que j’illustre d’abord par quelque chose que tout le monde connaît et utilise :

Le système décimal

Il fonctionne comme suit.

  • Nous convenons que les dix premiers nombres (zéro, un, deux, trois, …, huit, neuf) soient représentés par les dix symboles 0, 1, 2, 3, …, 8, 9.
  • Nous convenons que le onzième nombre, à savoir le 9+1 ou encore le dix, est représenté par la juxtaposition de 1 et de 0 : donc 10.
  • Puis on donne une règle pour les autres juxtapositions en utilisant les puissances de 10. Voici deux exemples:

    \( 236 = 2 * 10^2 + 3*10 + 6 \) et \( 190237 = 1*10^5+9*10^4+0*10^3+2 * 10^2 + 3*10 + 6 \).

Il n’est pas difficile de montrer que tout nombre naturel peut s’écrire dans ce système en n’utilisant que dix chiffres. Le fait qu’on ait pris dix chiffres est un pur hasard, certainement lié au fait que nous comptons dix doigts. Cela marcherait de la même manière si nous nous étions contentés par exemple de sept chiffres ; dans ce cas là, la juxtaposition \( 10\) signifierait le nombre sept et \( 236\) signifierait \( 2 * 10^2 + 3*10 + 6\) (c’est-à-dire \( 2 * 49 + 3*7 + 6\) dans notre système décimal habituel).

Dans toutes les langues que je connais il y a les noms particuliers « onze » et « douze » ; on dit « vingt-deux », mais on ne dit pas « dix-deux », on dit « douze ». Cela montre qu’il fût un temps où nous ne comptions pas dans en dizaines mais en douzaines.

Le système binaire

Maintenant au lieu de prendre dix chiffres nous nous contentons du minimum syndical, des deux chiffres 0 et 1. C’est vraiment le minimum car avec un seul chiffre nous ne pourrions pas aller très loin, nous serions restreints à la notation primitive par bâtons |||| .

La juxtaposition \( 10\) signifie alors le nombre deux et \( 101\) signifie \( 1 * 10^2 + 0*10 + 1\), c’est-à-dire \( 1 * 4 + 0*2 + 1\), donc cinq dans notre système décimal habituel.

Ecrivons quelques nombres naturels dans les deux systèmes, binaire suivi de décimal :

0 est 0, 1 est 1, 10 est 2, 11 est 3, 100 est 4, 101 est 5, 110 est 6, 111 est 7, 1000 est 8, etc.

\(1000000\) est \(2^6=64\), \(10000000\) est \(2^7=128\), \(10000000000\) est \(2^10=1024\) (un méga)

Ces derniers nombres sont très familiers en informatique. C’est simplement parce que les ordinateurs utilisent le système binaire pour compter. En effet, la manière la plus simple pour communiquer avec une machine c’est de lui donner seulement deux signaux (et pas trois ou plus), comme oui/non, comme on/off, comme gauche/droite (dans les leviers de la machine en bois) ou comme haut/bas, etc.

Exemples de passage d’un système à l’autre

Résumons par deux exemples les règles qui permettent de passer du système binaire au système décimal :

  • Soit \(n=10110\) un naturel écrit dans le système binaire. Alors dans le système décimal c’est le nombre
    \(n=1*2^4+0*2^3+1*2^2+1*2^1+0*2^0=1*16+0*8+1*4+1*2+0*1=22.\)
  • Soit \(m=1101\) un naturel écrit dans le système décimal (!). Pour le transformer en écriture binaire nous devons d’abord trouver la plus grande puissance de 2 qui « rentre » dans \(m\). Nous savons que \(2^10=1024\) et que \(2^11=2048\). Donc \(2^10\) est la plus grande puissance de 2 qui « rentre » dans \(1101,\) et ainsi l’écriture binaire de \(m\) nécessitera onze chiffres le premier étant 1. Nous avons \(m=2^10+77.\) La plus grande puissance de 2 qui « rentre » dans \(\77) est \(2^6=64.\) On est passé de la dixième puissance directement à la sixième ; les trois puissances « sautées » (neuvième, huitième, septième) sont représentées par des zéros. Donc l’écriture binaire de notre nombre commence par les cinq chiffres \(m=10001.\) On poursuit de la même manière : \(77=2^6+13\) ; la plus grande puissance de 2 qui « rentre » dans \(13\) est \(2^3=8.\) Puis \(13=2^3+5\) ; la plus grande puissance de 2 qui « rentre » dans \(5\) est \(2^2=4\). Le dernier reste est \(1=2^0 .\) Ainsi nous obtenons \(m=10001001101\) (notation binaire).
  • Pour nous rassurer de notre dernier résultat faisons le test et re-transformons l’écriture binaire en écriture décimale. Le nombre \(m=10001001101\) en binaire devient en décimal \(m=1*2^10+0*2^9+0*2^8+0*2^7+1*2^6+0*2^5+0*2^4+1*2^3+1*2^2+0*2^1+1*2^0\) donc \(m=1024+64+8+4+1=1101\) (notation décimale).

Compris ? Et n’oubliez pas : il y a 10 sortes de gens au monde : ceux qui comprennent la notation binaire et ceux qui ne la comprennent pas 😉

4 réponses
  1. Alex
    Alex dit :

    Merci Mathoman pour ce post très instructif !! D’ailleurs, la vidéo de la calculatrice en bois illustre bien ton post !!
    Je me permet juste de préciser que ce qu’on voit défiler dans le film Matrix n’est pas une suite constituée des chiffres 0 et 1 mais plutôt un mélange de caractères. Pour plus d’infos :
    en.wikipedia.org/wiki/Matrix_digital_rain
    Bonne continuation à ton blog de math !!

    Répondre

Laisser un commentaire

Rejoindre la discussion?
N’hésitez pas à contribuer !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *