Interrogation Tentatives de bonnes réponses à des questions qui peuvent ne pas l'être

Pourquoi un kilo à 1024 ?

Voilà une source de confusion qui mérite un brin d'explication.

Milliers et binaire en désaccord

Parmi les données qui sont manipulées dans un ordinateur il y a des tailles en tout genre, notamment celles des zones de mémoire où sont stockées ... d'autres données. Il est essentiel, par exemple, de connaître la longueur d'une chaîne de caractères située dans telle partie de la mémoire, la capacité d'un tampon de mémoire ou bien l'espace occupé par un fichier. Les données étant représentées par des bits une taille est exprimée en nombre de bits, plus souvent en nombre d'octets.

Comme certaines de ces tailles peuvent atteindre des valeurs élevées on est amené à utiliser des préfixes multiplicateurs (kilo pour 1 000, méga pour 1 000 x 1 000 = 1 000 000, etc.) comme pour les mètres ou les grammes. Seulement voilà, une taille est elle-même représentée par une suite de bits. Bien qu'il existe plusieurs possibilités de représentation des nombres dans un ordinateur, la plus efficace consiste à utiliser la numération binaire pure. Une taille exprimée sur n bits aura pour valeur maximum 2n-1. On n'aura donc jamais de tailles correspondant à un nombre rond de milliers de bits ou de millions d'octets puisque 1 000 n'est pas une puissance de 2 (1 000 = 103 = 23 x 53).

Milliers et binaire réconciliés

Ainsi, avec 8 bits (1 octet) une taille aura une valeur maximum de 255, 511 avec 9 bits et 1 023 avec 10. Attention, compte tenu du zéro cela revient respectivement à 256, 512 et 1 024 valeurs distinctes. Tiens donc, voilà qui est intéressant ! Entre 1 000 et 1 024 la différence n'est que de 2%. Moyennant cette approximation on va pouvoir réconcilier les puissances de 10 et les puissances de 2 et exprimer des tailles avec des mots qui nous sont familiers.

En convenant que kilo vaut 1 024, que méga vaut 1 024 x 1 024 = 1 048 576, etc. on peut exprimer une taille de manière à la fois parlante et précise. Pour avoir la taille à l'unité près il faudra faire les multiplications.

C'est la pagaille

Mais alors, quand on lit un nombre de quelque chose, comment savoir si les kilos sont des vrais kilos ou ces kilos approximatifs ? Il n'y a pas de règle générale, tout dépend de ce qu'on mesure. Quand il s'agit de mémoire interne, aucun doute, il s'agit de kilos dits binaires (1 024). En télétransmissions ou pour indiquer la capacité d'une mémoire externe c'est beaucoup plus flou.

En toute logique il n'y a aucune raison de mesurer une vitesse de téléchargement avec des kilos à 1 024. Pour un disque dur, le fait qu'un secteur contienne 512 octets pourrait inciter à utiliser le kilo binaire pour autant qu'il y ait un nombre pair de secteurs. Quand on passe aux mégas et aux gigas cet argument ne tient plus et les constructeurs utilisent généralement ces préfixes pour leur vraie valeur, le doute jouant en leur faveur.

Les sages tentent de remettre de l'ordre

Cette ambiguïté n'a pas échappé aux organismes de normalisation. La Commission électrotechnique internationale (IEC pour International Electrotechnical Commission) a publié en 1998, puis complété ultérieurement, une norme définissant les préfixes à utiliser. Les noms sont formés en prenant la première syllabe de chaque préfixe SI et en lui suffixant bi pour « binaire ». La liste actuelle est la suivante.

Nom Symbole Facteur SI
kibi Ki 210 = 1 024 kilo
mibi Mi 220 = 1�048�576  méga
gibi Gi 230 = 1 073 741 824 giga
tébi Ti 240 = 1 099 511 627 776 téra
pébi Pi 250 = 1 125 899 906 842 624 péta
exbi Ei 260 = 1 152 921 504 606 846 976 exa
zébi Zi 270 = 1 180 591 620 717 411 303 424 zetta
yobi Yi 280 = 1 208 925 819 614 629 174 706 176 yota

On ne peut pas dire que cette norme ait véritablement bouleversé les habitudes. Pourtant tout le monde gagnerait à ce qu'elle soit largement respectée.

 

Toutes les pages du site Les autres sites

Accueil
À quoi sert la pile du BIOS ?
À quoi sert le masque de sous-réseau ?
C'est quoi un bit au juste ?
C'est quoi la différence entre un hub et un switch ?
C'est quoi l'invite de commande ?
Comment augmenter la portée de son réseau Wifi ?
Comment connecter une imprimante réseau ethernet ou Wifi ?
Comment faire un réseau local avec mes deux PC branchés sur ma box ?
Comment fonctionne un routeur NAT ?
Comment mesurer sa bande passante ?
Comment séparer son système d'exploitation et ses données  ?
DHCP ou pas DHCP ?
Disques, partitions, lecteurs, comment s'y retrouver ?
Éditeur de texte et traitement de texte, est-ce pareil ?
Est-ce qu'un modem et un routeur c'est la même chose ?
Faut-il mettre les accents sur les majuscules ?
Peut-on mettre un routeur derrière une supermagicbox ou un modem routeur ?
Pourquoi un kilo à 1024 ?
Quelle est la différence entre une trame et un paquet ?
Quelle est la différence entre un navigateur et un moteur de recherche ?
Quelle taille donner à la mémoire virtuelle ?
Un VPN à quoi ça sert  ?
Vous avez dit messagerie ?

Les bricolages de Heffgé

 

Le DOS sied