Bedeutung von "i" in "MiB"?

82

Ich sehe die Verwendung von "MiB" als Maß für die Größe in Ubuntu. Wofür steht MiB? Insbesondere das "i"?

Renjith G
quelle

Antworten:

115

Es gibt zwei Möglichkeiten (im Allgemeinen), Größenordnungen anzugeben, um das Ablesen großer Zahlen zu vereinfachen. Zunächst können Sie eine Potenz von 10 verwenden.

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

Oder Zweierpotenzen

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

Unter Verwendung dieser Reihen als Basis erhalten wir die Zahlen 1000 und 1024 (10³ und 2¹⁰) für ein Kilo .

Ein Byte besteht aus acht Bits. Ein Kilobyte entspricht also 8 × 10³ = 8000 Bits. Festplattenhersteller verwenden diese Methode. In der Informatik werden normalerweise Potenzen von zwei verwendet, sodass ein Kibibyte 8 × 2¹⁰ = 8192 Bit ist.

Der Unterschied wird nur größer, wenn die Zahlen größer werden. Einige haben diese beiden Systeme sogar gemischt, um schöne Zahlen für die Verpackung zu erhalten. Aus diesem Grund verfügt eine 1,44-MB-Diskette weder über 1,44 Megabyte noch über 1,44 Mebibyte (sie verwenden 1024 × 1000).

Die Logik hinter dem i ist, dass die Ausdrücke von den ursprünglichen si-Präfixen, Kilo, Mega, Giga, aber mit dem eingegebenen Wort binär abgeleitet sind . Das i ist also der zweite Buchstabe von binär . Die Mnemonik für das Kibibyte ist "Kilobinärbyte", und "KiB" wird "Kibibyte" ausgesprochen.

All dies ist in der Norm IEC_80000 definiert .

Beachten Sie, dass ein Mebibyte nicht als 2²⁰, sondern als (2 10 ) 2 definiert ist , obwohl sie gleich sind. Ein Gibibyte ist (2 10 ) 3 , ein Tebibyte ist (2 10 ) 4 und so weiter.

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

Denken Sie daran, dass der Begriff Kilobyte sehr oft verwendet wird, wenn der Autor Kibibyte bedeutet. Die binäre Einheit wurde erst 1999 eingeführt, wie Randy Orrison betont.


Wie nealmcb in den Kommentaren feststellte, gibt es hierzu eine offizielle Richtlinie:
https://wiki.ubuntu.com/UnitsPolicy

Zusammenfassend erinnert diese Richtlinie die Entwickler daran, entweder SI- oder IEC-Präfixe zu verwenden, diese jedoch niemals zu mischen. Es heißt weiter:

Für Dateigrößen gibt es zwei Möglichkeiten:

  • Zeige beide, Basis-10 und Basis-2 (in dieser Reihenfolge). Ein Beispiel ist der Linux-Kernel: "2930277168 512-Byte-Hardware-Sektoren: (1,50 TB / 1,36 TiB)".
  • Zeigen Sie nur die Basis 10 an, oder geben Sie dem Benutzer die Möglichkeit, sich zwischen der Basis 10 und der Basis 2 zu entscheiden (die Standardeinstellung muss die Basis 10 sein).
Stefano Palazzo
quelle
8
Siehe auch wiki.ubuntu.com/UnitsPolicy
nealmcb
5
Gern geschehen. Ich habe eine Menge Zeit damit verbracht und die damit verbundenen Fehler. Vielen Dank für eine tolle Beschreibung!
Nealmcb
1
Anstatt "Denken Sie daran, dass der Begriff Kilobyte sehr oft verwendet wird, wenn der Autor Kibibyte bedeutet." Würde ich sagen. Software und Programmierer, die älter als 12 Jahre sind, verwenden weiterhin das Originalformular. " Davon abgesehen ein ausgezeichneter Bericht. (Aus einem kurzen Blick auf Wikipedia geht hervor, dass ich ein oder zwei
Ausfälle haben
@RandyOrrison Das ist ein Mythos. "kilo" wird seit den 1950er Jahren mit beiden Definitionen im Computer verwendet. en.wikipedia.org/wiki/Timeline_of_binary_prefixes
Endolith
Für die Neugierigen hat eine 1,44 "MB" -Diskette 1,47 MB ​​oder 1,41 MiB.
wjandrea
12

Wofür steht MiB? Insbesondere das "i"?

Da niemand diese tatsächlich antwortete: „MiB“ steht für „ m egab i nary b yte“, die abgekürzt werden kann , um „ m eb ib yte“ (obwohl diese Art von dumm klingt, und ich möchte lieber nur Stick mit den Worten " megabinary "). Siehe die NIST-Erklärung.

Das "i" kommt also vom Wort "binär".

In der Vergangenheit gab es andere Vorschläge, um diese Einheiten abzukürzen, aber sie konnten alle nicht an Boden gewinnen:

  • κ = 1024, κ2 = 1024², κ3 = 1024³, ... (Griechischer Buchstabe Kappa, schwer zu tippen)
  • KKB = 1024, MMB = 1024², GGB = 1024³, ... (kann als Megamegabyte = TB fehlinterpretiert werden)
  • bK = 1024, bK² = 1024², bK³ = 1024³, ... (wenn vorgeschlagen, hatten viele Computer nicht einmal Kleinbuchstaben)
  • 1B10 = 1024, 1B20 = 1024², 1B30 = 1024³, ...
  • k & sub2; B = 1024, M & sub2; B = 1024², G & sub2; B = 1024³, ...
Endolith
quelle
4

Sie sind Binärpräfixe , die den gebräuchlicheren Dezimalpräfixen entsprechen. (Das ist ein guter Artikel, der die Begründung gut erklärt.)

TRiG
quelle