Dans le cours, nous avons signalé qu'un octet peut prendre 28 valeurs différentes.
Expliquez pourquoi. Généralisez le raisonnement à une situation à n bits.
Une aide
Cherchez à comprendre comment vous pouvez construire toutes les valeurs que l'on peut coder
sur trois bits à partir des valeurs que l'on peut coder sur deux bits.
Puis cherchez de même à comprendre comment vous pouvez construire toutes les valeurs
que l'on peut coder sur quatre bits à partir des valeurs que l'on peut coder sur trois bits.
Généralisez...
De un à deux bits
Un bit peut prendre deux valeurs : 0 ou 1.
Avec deux bits : on part de l'état du premier bit (0 ou 1) et
on complète par l'état du second bit.
Soit le premier bit est à 0 et on peut compléter sur le second bit par 0 ou 1, ce qui donne :
00 ou 01.
Soit le premier bit est à 1 et on peut compléter sur le second bit par 0 ou 1, ce qui donne :
10 ou 11.
De deux à trois bits
Avec trois bits : on part de l'état des deux premiers bits et on complète par l'état du troisième.
L'état 00 conduit aux deux états 000
et 001.
L'état 01 conduit aux deux états 010
et 011.
L'état 10 conduit aux deux états 100
et 101.
L'état 11 conduit aux deux états 110
et 111.
Le nombre de mots de longueur 3 bits est donc le double du nombre de mots de longueur 2 bits.
De la même façon, chaque mot écrit sur 3 bits peut donner lieu à deux mots sur quatre bits : un mot en complétant le mot de longueur trois bits par un 0, et
un autre mot en complétant par 1.
Le nombre de mots sur 4 bits sera donc le double du nombre de mots sur 3 bits.
De n-1 bits à n bits
On obtient les états à n bits en complétant chacun des états possibles à n-1 bits par l'une ou l'autre (0 ou 1) des possibilités pour le bit
ajouté.
On voit donc que l'on multiplie par deux le nombre d'états possibles à chaque fois que l'on ajoute un bit.
Conclusion
Comme pour un bit, le nombre d'états est égal à 2, il est égal à 2× 2 = 2 2 pour 2 bits, à 22×2
= 23 pour 3 bits,
à 23×2
= 24 pour 4 bits, ... Et de façon générique, on a deux 2n états possibles sur une longueur de n bits.
Nombre de couleurs.
Nous verrons dans ce cours le codage RGB des couleurs.
Il consiste en une composante de rouge (R : red)) codée sur un octet, une composante de vert (G : green) codée
sur un octet et enfin une composante de bleu (B : blue) codée sur un octet.
Combien de couleurs peut-on ainsi coder ?
Une aide
Il s'agit du même problème que dans l'exercice précédent.
Raisonnement par composante couleur
La composante R peut prendre 28 valeurs différentes.
La composante G peut prendre 28 valeurs différentes.
A chaque valeur de la composante R, on peut associer n'importe quelle valeur de la composante G. Cela fait donc
déjà 28 × 28 valeurs possibles.
La composante B peut prendre 28 valeurs différentes.
On peut compléter chacune des 28 × 28 valeurs (R,G) par n'importe quelle
valeur de la composante B. Cela fait donc
28 × 28 × 28 = 16 777 216 valeurs possibles.
Raisonnement sur le nombre de bits
On peut plus brièvement remarquer que le codage se fait sur une longueur de 3×8=24 bits.
D'après l'exercice précédent, on peut donc coder 224 couleurs. On retrouve bien entendu nos plus de 16 millions de couleurs
obtenues par le décompte précédent.
Adresses IP.
Pour le routage de l'information sur les réseaux suivant le protocole IP, les machines sont adressées en IP v4 ou en IP v6.
Une adresse IP v4 est codée sur 32 bits. Combien d'adresses peut-on définir en IP v4 ?
Une adresse IP v6 est codée sur 128 bits. Combien d'adresses peut-on définir en IP v6 ?
Admettons, avec une multiplication folle des objets connectés, qu'il soit nécessaire d'attribuer 1 milliard d'adresses IP par seconde.
Au bout de combien de temps aura-t-on épuisé les adresses IPv4 ?
Au bout de combien de temps aura-t-on épuisé les adresses IPv6 ?
Nombre potentiel d'adresses en IP v4
Avec 32 bits, on peut coder 232 = 4 294 967 296 (un peu plus de 4 milliards) adresses distinctes
(en fait certains codes sont réservés à des rôles particuliers, mais cela ne fera pas vraiment de différence
pour cet exercice)
Nombre potentiel d'adresses en IP v6
Avec 128 bits, on peut coder 2128 adresses (soit plus de 3 * 1038 adresses).
Temps d'épuisement en IP v4
Avec un milliard d'adresses par seconde, on épuiserait le potentiel de l' IPv4 en moins de 5 secondes.
Temps d'épuisement en IP v6
Avec l'IPv6, il nous faut
2128109secondes=2128109×3600×24×365années
soit plus de 1022 années. A titre de comparaison, l'âge de l'univers est estimé à environ 15.10 9 années.
Il faudrait donc 700 milliards de fois l'âge de l'univers pour épuiser le potentiel de l'adressage IPv6 sous ces conditions !
Routage IP
Pour comprendre ce qu'est le routage IP, vous pouvez lire
cette page.
Volume en octets d'un disque dur
Un disque dur a une capacité de 128 Gio.
Quelle est sa capacité en Go ?
Un disque dur a une capacité de 100 Go.
Quelle est sa capacité en Gio ?
Ci-dessous une copie d'écran d'un ordinateur sous windows 10.
Montrez que Windows fournit des informations ambigües à ses utilisateurs.
100 Go = 100 × 109 octets ≈ 93,13 × 230, soit environ 93,13 Gio.
Le nombre utilisé en Go est toujours supérieur puisque 1 Go est inférieur à 1 Gio.
Microsoft... doit progresser
46 904 725 504 octets correspondent évidemment à 46,9 Go (en arrondissant) et non à 43,6 Go.
Par contre 46 904 725 504 octets est approximativement égal à 43,68× 230 octets.
Microsoft confond donc les Go et les Gio. L'espace utilisé est de 43,68 Gio.
A titre de comparaison, ci-dessous ce qu'affiche linux pour une clef usb de 4 Go et ce qu'affiche windows.
.
Indication LinuxIndication Windows
Les indications en octets sont corrects (heureusement) pour windows.
Mais il est plus naturel de lire les indications en Go :
la signification de nombres courts est en effet plus facile à appréhender.
Un utilisateur peut donc être facilement trompé par la lecture de
l'indication windows, tandis qu'elle est correcte sous linux.
Sur le web
Une discussion sur un forum liée à ce problème
ici.
MP3.
Une chanson de 4 minutes environ est stockée sur environ 4 Mo en mp3.
Combien de telles chansons peut-on stocker sur un disque dur de 1 To ?
A quelle durée cela correspond-il ?
Nombre de chansons
Nombre de chansons
1 To = 1012 octets.
4 Mo = 4 × 106 octets.
10124×106=0.25×106=25×104
On peut donc stocker environ 250 000 chansons de ce type sur le disque de 1 To.
Durée
250000×4=1000000 , un million de minutes.
100000060∗24≈694 , environ 694 jours.
Pas loin de deux années de musique !
Éditeur de texte vs traitement de texte
Ouvrez un fichier avec un éditeur de texte et écrivez "Bonjour." dans ce fichier. Enregistrez le sous le nom bonjour.txt.
Ouvrez un fichier avec un traitement de texte et écrivez "Bonjour." dans ce fichier. Enregistrez le sous le nom bonjour
(en laissant l'extension naturelle associée au logiciel choisi) .
Cherchez maintenant (clic droit sur le fichier, propriétés) à connaître le poids de ces deux fichiers.
Une solution
Avec LibrOffice, j'ai obtenu un poids de 8225 octets. Avec un fichier txt, un poids de 9 octets.
Un fichier 900 fois plus lourd avec le traitement de texte !!
facebook.
Dans cet
article datant de 2012,
la quantité de données enregistrées par facebook en un jour est estimée à 500 To.
En un an, combien de Po Facebook a-t-il enregistré ?
Une solution
1 Po = 1015 octets.
500 To = 500 × 1012 octets.
En un an, le nombre d'octets enregistrés est : 500 × 1012 × 365.
Soit 1825 × 1014 octets ou encore 182.5 × 1015 octets.