Les unités

Octet.

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.

  1. Une adresse IP v4 est codée sur 32 bits. Combien d'adresses peut-on définir en IP v4 ?
  2. Une adresse IP v6 est codée sur 128 bits. Combien d'adresses peut-on définir en IP v6 ?
  3. Admettons, avec une multiplication folle des objets connectés, qu'il soit nécessaire d'attribuer 1 milliard d'adresses IP par seconde.
    1. Au bout de combien de temps aura-t-on épuisé les adresses IPv4 ?
    2. 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 \( \frac{2^{128}}{10^9} \text{secondes} = \frac{2^{128}}{10^9 \times 3600 \times 24 \times 365} \text{anné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

  1. Un disque dur a une capacité de 128 Gio. Quelle est sa capacité en Go ?
  2. Un disque dur a une capacité de 100 Go. Quelle est sa capacité en Gio ?
  3. Ci-dessous une copie d'écran d'un ordinateur sous windows 10.
    windows toujours aussi mauvais.
    Montrez que Windows fournit des informations ambigües à ses utilisateurs.

De Gio vers Go

128 Gio = 128 × 230 octets ≈ 137,5 × 109 octets. Environ 137,5 Go.

De Go vers Gio

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.
clef.

linux
Indication Linux
windows
Indication 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.

\( \frac{10^{12}}{4 \times 10^6} = 0.25 \times 10^6 = 25 \times 10^4\)

On peut donc stocker environ 250 000 chansons de ce type sur le disque de 1 To.

Durée

\( 250000 \times 4 = 1 000 000 \) , un million de minutes.

\( \frac{1000000}{60*24} \approx 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.

Plus de 182 Po de données en 2012...