Signification de «i» dans «MiB»?

82

Je vois l'utilisation de "MiB" comme mesure pour représenter la taille dans Ubuntu. Que signifie MiB? En particulier le "i"?

Renjith G
la source

Réponses:

115

Il existe deux manières (couramment utilisées) de désigner des ordres de grandeur pour faciliter la lecture de grands nombres. Vous pouvez d’abord utiliser une puissance de 10.

10⁰ = 1
10¹ = 10
10² = 100
10³ = 1000

Ou des pouvoirs de deux

2⁰ = 1
2¹ = 2
2² = 4
2³ = 8

En utilisant ces séries comme base, nous arrivons aux nombres 1000 et 1024 (10³ et 2¹⁰) pour un kilo .

Il y a huit bits dans un octet. Donc, un kilo-octet correspond à 8 × 10³ = 8 000 bits. Les fabricants de disques durs utilisent cette méthode. En informatique, les utilisateurs utilisent généralement des puissances de deux, donc un kibibyte correspond à 8 × 2¹⁰ = 8192 bits.

La différence ne fait que grandir à mesure que les chiffres grandissent. Certains ont même mélangé ces deux systèmes pour obtenir de bons chiffres à mettre sur leurs emballages. C'est pourquoi une disquette de 1,44 Mo ne contient ni 1,44 Mo, ni 1,44 Mo (ils utilisent 1024 × 1000).

La logique derrière le i est que les termes sont dérivés des préfixes si originaux, kilo, méga, giga, mais avec le mot binaire inséré. Le i est donc la deuxième lettre du binaire . Le code mnémonique pour le kibibyte est "kilo octet binaire", et "KiB" est prononcé "Kibibyte".

Tout cela est défini dans la norme IEC_80000 .

Notez qu'un mebibyte n'est pas défini en tant que 2²⁰, mais en tant que (2 10 ) 2 , bien qu'ils soient égaux. Un gibibyte est (2 10 ) 3 , un tebibyte est (2 10 ) 4 et ainsi de suite.

Prefix       Bytes                      Prefix       Bytes
1 Byte     = (2^10)^0 = 1               1 Byte     = (10^3)^0 = 1
1 Kibibyte = (2^10)^1 = 1024            1 Kilobyte = (10^3)^1 = 1000
1 Mebibyte = (2^10)^2 = 1048576         1 Megabyte = (10^3)^2 = 1000000
1 Gibibyte = (2^10)^3 = 1073741824      1 Gigabyte = (10^3)^3 = 1000000000
1 Tebibyte = (2^10)^4 = 1099511627776   1 Terabyte = (10^3)^4 = 1000000000000

Gardez à l'esprit que, très souvent, le terme kilo-octet est utilisé lorsque l'auteur veut dire kibibyte. L'unité binaire n'a été introduite qu'en 1999, comme le souligne Randy Orrison.


Comme nealmcb l'a découvert dans les commentaires, il existe une politique officielle à ce sujet:
https://wiki.ubuntu.com/UnitsPolicy

En résumé, cette stratégie rappelle aux développeurs d'utiliser les préfixes SI ou CEI, mais de ne jamais les mélanger. Il se poursuit:

Pour les tailles de fichier, il y a deux possibilités:

  • Affichez les deux bases 10 et base 2 (dans cet ordre). Un exemple en est le noyau Linux: "2930277168 Secteurs matériels de 512 octets: (1.50 To / 1.36 TiB)"
  • N'affichez que base 10, ou donnez à l'utilisateur la possibilité de choisir entre base 10 et base 2 (la valeur par défaut doit être base 10).
Stefano Palazzo
la source
8
Voir aussi wiki.ubuntu.com/UnitsPolicy
nealmcb
5
Mon plaisir. J'ai passé beaucoup de temps sur cela et sur les bugs associés. Merci pour cet excellent article!
Nealmcb
1
Plutôt que "Gardez à l'esprit que, très souvent, le terme kilo-octet est utilisé quand l'auteur veut dire kibibyte" je dirais "Gardez à l'esprit que le terme kibibyte n'a été introduit qu'en 1999 et qu'avant, kilobyte faisait référence à 1024 octets. La plupart des documents, logiciels et les programmeurs âgés de plus de 12 ans continueront à utiliser le formulaire original. " Autre que cela, un excellent écrit. (Date d'un très rapide coup d'oeil à Wikipedia, je pourrais être un peu ou deux.)
Randy Orrison
@ RandyOrrison C'est un mythe. "kilo" est utilisé avec les deux définitions en informatique depuis les années 1950. en.wikipedia.org/wiki/Timeline_of_prefixes_binaires
endolithe
Pour les curieux, une disquette 1,44 "MB" a 1,47 MB ​​ou 1,41 Mio.
Wjandrea
12

Que signifie MiB? En particulier le "i"?

Puisque personne ne répond en fait ceci: « MiB » signifie « m EGAB i naire b Byte », qui peut être abrégé « m eb de la Byte » (bien que cela semble un peu stupide, et je préfère juste coller à dire " mégabinaire "). Voir l'explication du NIST.

Donc, le "i" vient du mot "binaire".

Il y avait d'autres propositions d'abréger ces unités dans le passé, mais toutes n'ont pas réussi à gagner du terrain:

  • κ = 1024, κ2 = 1024², κ3 = 1024³, ... (lettre grecque kappa, difficile à saisir)
  • KKB = 1024, MMB = 1024², GGB = 1024³, ... (pourrait être interprété à tort comme mégamegabyte = TB)
  • bK = 1024, bK² = 1024², bK³ = 1024³, ... (lorsque proposé, de nombreux ordinateurs n'avaient même pas de minuscule)
  • 1B10 = 1024, 1B20 = 1024², 1B30 = 1024³, ...
  • k₂B = 1024, M₂B = 1024², G₂B = 1024³, ...
endolithe
la source
4

Ce sont des préfixes binaires , correspondant aux préfixes décimaux les plus courants. (C'est un bon article qui explique bien la logique.)

Trigonométrie
la source