Dans les ordinateurs, l'élément de base de la mémoire est un circuit électronique à deux états, codés par les chiffres \(0\) et \(1\). Les ordinateurs contiennent un très grand nombre de tels circuits, dont les états sont souvent regroupés par paquets de \(8\).
Définition :
Un bit (abréviation de binary digit) est l'un des deux chiffres \(0\) ou \(1\). Un octet est une suite de \(8\) bits.
Question⚓
\(00000000\), \(00000001\), \(00000010\), \(00000011\), ..., \(11111111\) sont quelques octets parmi tous les octets possibles. Combien y en a-t-il au total ?
Exemple :
Il n'y a que \(2=2^1\) nombres à \(1\) bit : \(0\), \(1\)
il y a \(4=2^2\) nombres à \(2\) bits : \(00\), \(01\), \(10\), \(11\)
il y a \(8=2^3\) nombres à \(3\) bits : \(000\), \(001\), \(010\), \(011\), \(100\), \(101\), \(110\), \(111\)
Attention :
Pour tout entier naturel \(n\), on peut écrire \(2^n\) nombres avec \(n\) bits.
Question⚓
Lorsqu'on écrit les nombres en base \(10\), combien y a-t-il de nombres à \(n\) chiffres ?
Complément :
L'écriture en binaire (ou en base \(2\)) consiste à écrire les nombres entiers uniquement avec des \(0\) et des \(1\), selon une règle précise que l'on montre sur un exemple, l'entier \(2020\) :
la plus grande puissance de \(2\) inférieure ou égale à \(2020\) est \(1024=2^{10}\) et \(2020=1024+996\) ;
la plus grande puissance de \(2\) inférieure ou égale à \(996\) est \(512=2^9\) et \(996=512+484\) ;
la plus grande puissance de \(2\) inférieure ou égale à \(484\) est \(256=2^8\) et \(484=256+228\) ;
la plus grande puissance de \(2\) inférieure ou égale à \(228\) est \(128=2^7\) et \(228=128+100\) ;
la plus grande puissance de \(2\) inférieure ou égale à \(100\) est \(64=2^6\) et \(100=64+36\) ;
la plus grande puissance de \(2\) inférieure ou égale à \(36\) est \(32=2^5\) et \(36=32+4\) ;
Comme \(4=2^2\), on a maintenant la décomposition de \(2020\) en somme de puissances de \(2\) :
\(2020=2^{10}+2^9+2^8+2^7+2^6+2^5+2^2\)
Il faudra \(11=10+1\) bits pour écrire \(2020\) en base \(2\) : de droite à gauche et pour \(1\le n\le 11\), on met le bit \(1\) en position \(n\) si \(2^{n-1}\) apparaît dans la décomposition ci-dessus, \(0\) sinon. L'écriture de \(2020\) en base \(2\) est :
\(11111100100\)
Remarque : le procédé est similaire à celui utilisé en base \(10\), à la différence près qu'on a alors besoin de \(10\) chiffres : \(2020=2\times10^3+0\times10^2+2\times10^1+0\times10^0\).
La quantification consiste à choisir le nombre de bits avec lesquels on mémorisera les valeurs échantillonnées du signal.
Méthode :
Pour quantifier un signal, on fixe le nombre \(n\) de bits sur lesquels on veut encoder les valeurs du signal puis on divise l'amplitude maximale du signal en \(2^n\) intervalles de même taille, autant que le nombre de valeurs qu'on peut écrire sur \(n\) bits.
Question⚓
La voix est encodée sur \(8\) bits par le téléphone tandis que la musique est encodée sur \(16\) bits sur les CD audio. Combien y a-t-il de valeurs possibles pour l'amplitude du signal dans chacun des deux cas ?
Le résultat est d'autant plus fidèle au signal reçu que le nombre de bits fixé pour la quantification est grand. En contrepartie, augmenter le nombre de bits augmente également la place nécessaire pour stocker l'information.