Binärpräfix

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Binär-Präfix)

Binärpräfixe (auch IEC-Präfixe oder IEC-Vorsätze)[1] sind Vorsätze für Maßeinheiten (Einheitenvorsätze), die Vielfache bestimmter Zweierpotenzen bezeichnen. Sie werden vorwiegend mit Einheiten wie Bit (Symbol „bit“, selten „b“) oder Byte (Symbol „B“) verwendet, um Datenmengen zu bemessen, da hier aus technischen Gründen häufig Zweierpotenzen auftreten. Als Einheitenvorsatz wird sowohl der Name („kibi“, „mebi“, …) als auch das zugehörige Symbol („Ki“, „Mi“ …) bezeichnet.

Ursprünglich wurden hierfür Präfixe verwendet, die für SI-Einheiten zur Bezeichnung von Zehnerpotenzen geschaffen wurden und ähnliche Zahlenwerte habe. Was gemeint war, sollte sich aus dem Kontext ergeben. Weil diese Zweideutigkeit aber oft zu Problemen führte, wurden eigene Binärpräfixe geschaffen. Die SI-Präfixe sollen nur noch für Zehnerpotenzen verwendet werden. Diese Regel wird aber nicht immer befolgt.

Namen und Definition binärer Präfixe

Ein wichtiger Bestandteil eines Computers ist der Arbeitsspeicher, der heute üblicherweise als Halbleiterspeicher realisiert wird. Die einzelnen Speicherzellen werden mit Hilfe von parallelen, binär arbeitenden Leitungen adressiert, die zusammengefasst als Adressbus bezeichnet werden. Mit einem Adressbus, der n Leitungen besitzt, können 2n Speicherzellen adressiert werden. Daher werden direkt adressierbare Halbleiterspeicher üblicherweise in Größen von Zweierpotenzen hergestellt.

Zufälligerweise liegt die Zweierpotenz 210 = 1024 nahe bei der Zehnerpotenz 103 = 1000. Da die dezimalen SI-Präfixe Potenzen von 1000 sind, lag es nahe, die binären Präfixe in Anlehnung daran als Potenzen von 1024 zu definieren und ihnen ähnliche Namen zu geben.

Die folgende Tabelle listet die Binärpräfixe und vergleicht die Werte mit den SI-Präfixen der entsprechenden Größenordnung:

Binärpräfix SI-Präfix ähnlicher Größe
kibi Ki 210 =  1024  = 1.024e3 kilo k  1000  = 103
mebi Mi 220 = 102421.049e6 mega M 10002 = 106
gibi Gi 230 = 102431.074e9 giga G 10003 = 109
tebi Ti 240 = 102441.100e12 tera T 10004 = 1012
pebi Pi 250 = 102451.126e15 peta P 10005 = 1015
exbi Ei 260 = 102461.152e18 exa E 10006 = 1018
zebi Zi 270 = 102471.181e21 zetta Z 10007 = 1021
yobi Yi 280 = 102481.209e24 yotta Y 10008 = 1024

Beispiel: 512 MiB (Mebibyte) = 512 · 220 Byte = 536.870.912 Byte ≈ 537 MB (Megabyte).

Die Bezeichnungen der Präfixe kibi, mebi, gibi etc. wurden aus den ersten zwei Buchstaben der entsprechenden SI-Präfixe, ergänzt um „bi“ für „binär“ gebildet. Als Symbole der Binärpräfixe wurden die Symbole der SI-Präfixe verwendet und an diese der Kleinbuchstabe „i“ angehängt, wobei für kibi der Großbuchstabe „K“ verwendet wird.

Während der Größenunterschied zwischen „kibi“ und „kilo“ nur 2,4 % beträgt, wächst er mit höheren Potenzen immer weiter an. So ist ein Pebibyte schon 12,6 % mehr als ein Petabyte.

Geschichte

Ursprünge

In der Zeit der ersten Heimcomputer wurde es üblich, 1024 Byte als „Kilobyte“ zu bezeichnen. Manchmal wurde dabei zwischen „k“ (= 1000) und „K“ (= 1024) unterschieden – eine Möglichkeit, die später für den Vorsatz „Mega“ nicht zur Verfügung stand.[2] Da Speicherbausteine und zunächst auch Datenspeicher üblicherweise nur in Größen von Zweierpotenzen hergestellt wurden war die Gefahr von Missverständnissen gering. Überdies betrug die Abweichung nur bei „Kilo-“ nur 2,4 %. Diese binäre Verwendung der SI-Präfixe wurde 1986 von der IEEE auch in einem Glossar dokumentiert.[3]

Mit der Zeit jedoch wurden Festplatten in beliebigen Größen hergestellt, und aufgrund der zunehmenden Größe wurden die Präfixe „Mega-“ und „Giga-“ verwendet, bei denen die Abweichungen größer sind. Dies führte bei der Angabe von Festplattenkapazitäten in MB oder GB sowie auch bei der Datenübertragungsraten in MB/s oder Mbit/s zu Zweifeln hinsichtlich der genauen Bedeutung. Es kamen sogar Mischformen vor, etwa bei der Speicherkapazität einer 3,5-Zoll-Diskette: „1,44 MB“ bedeutete in diesem Fall 1,44 × 1000 × 1024 Byte.

Normung

Um Mehrdeutigkeiten zu vermeiden, schlug die Internationale elektrotechnische Kommission (IEC) im Juni 1996 einen neuen Normentwurf für Binärpräfixe vor, die nur in der binären Bedeutung verwendet werden sollten.[4][5] Dieser Entwurf wurde im Dezember 1998 als Norm beschlossen und im Januar 1999 als Ergänzung zu IEC 60027-2 veröffentlicht.[6] Er führte die Präfixe kibi, mebi, gibi, tebi, pebi und exbi für binäre Vielfache von Einheiten ein. In der Norm wurde außerdem darauf hingewiesen, dass die SI-Präfixe nur für auf Zehnerpotenzen basierende Vielfache verwendet werden sollten. Diese Ergänzungen wurden in die im November 2000 veröffentlichte zweite Auflage der Norm IEC 60027-2 (2000-11) integriert. In die im August 2005 veröffentlichte dritte Ausgabe der Norm IEC 60027-2 (2005-08) wurden auch die Binärpräfixe zebi und yobi aufgenommen.[7]

Viele Standardisierungsorganisationen schlossen sich dieser Empfehlung an. Darunter sind zu nennen das BIPM/CIPM (1998), das IEEE 1541 (2002) und speziell in Deutschland die Physikalisch-Technische Bundesanstalt (2007)[8] (weitere: NIST, CENELEC,[9] DIN/EN).[10][11]

Auch das für die SI-Präfixe zuständige Internationale Büro für Maß und Gewicht (BIPM) empfahl 2006 in der 8. Auflage der SI-Broschüre für die Bezeichnung von Zweierpotenzen die Binärpräfixe und riet von der Verwendung der SI-Präfixe in binärer Bedeutung ab.[12][13][14] Mit clause 4 wurden die binären Präfixe Bestandteil der weltweiten ISO-Norm IEC 80000-13:2008 (bzw. DIN EN 80000-13:2009-01).

Verwendung

Richtlinien

Die Einführung der Binärpräfixe bedeutet nicht, dass sie die SI-Präfixe für die Verwendung mit Bits und Bytes ersetzen sollen. Beispielsweise kann man die Größe eines 230 B großen Arbeitsspeichers mit „1.073.741.824 B“, „circa 1074 MB“ oder eben praktischerweise als „exakt 1 GiB“ angeben. Dadurch können die SI-Präfixe stets eindeutig in ihrer genormten Bedeutung verwendet werden.

Welche Angabe sinnvoller ist, hängt vom Verwendungszweck ab, insbesondere davon, ob der Hintergrund einer binären Adressierung besteht und ob dieser von Belang ist (wie z. B. bei der Größe eines Halbleiterspeichers oder der Partitionierung einer Festplatte), oder ob dieser Hintergrund nicht mehr relevant ist (z. B. beim späteren Arbeiten mit Dateien auf denselben Medien). Das Arbeiten mit Zweierpotenzen kann allerdings beim Addieren oder Subtrahieren von Datenmengen mit verschiedenen Binärpräfixen und beim Übergang auf größere oder kleinere Binärpräfixe umständlicher sein als bei der Verwendung der auf das Dezimalsystem zugeschnittenen SI-Präfixe (wie beispielsweise 537 MB).

Begriffsverwirrung bei nicht normgerechter Verwendung dezimaler Präfixe

Für Arbeitsspeicher werden oft auch heute noch SI-Präfixe normwidrig in binärer Bedeutung verwendet. Dies gilt vor allem für mündliche Kommunikation, wenn die binären Präfixe Ki-, Mi-, … als „Kilo-“, „Mega-“, … gesprochen werden. Da in diesem Zusammenhang Zweierpotenzen die Regel sind, wird vorausgesetzt, dass dies richtig verstanden wird. Bei Datenspeichern mit sequentieller Adressierung oder bei der sequentiellen Übertragung von Daten gibt es hingegen keinen Grund, mit Zweierpotenzen zu arbeiten, sodass hier die SI-Präfixe meist normgerecht verwendet werden.

Diese inkonsequente Vorgehensweise kann beim Rechnen mit Einheiten zu schwer nachvollziehbaren Fehlern führen, wie an folgendem einfachen Beispiel gezeigt werden soll: Ein Computerbenutzer will eine Datei mit der angegebenen Größe von „40 MB“ aus dem Internet herunterladen und hat dazu eine Datenleitung mit einer Datenübertragungsrate von 8 Mbit/s zur Verfügung. Die zur vollständigen Übertragung dieser Datei benötigte Zeit lässt sich mit der Umrechnung 1 B = 8 bit (vereinfacht) folgendermaßen berechnen:

Hier drängt es sich auf, die „MB“ im Zähler gegen die „MB“ im Nenner zu kürzen, sodass sich ein Ergebnis von ergibt. Wenn jedoch mit dem „MB“ im Zähler eine Zweierpotenz gemeint ist, während im Nenner eine Zehnerpotenz gemeint ist, kann man diese Einheiten nicht gegeneinander kürzen, obwohl dies praktisch nicht mehr ersichtlich ist.

Akzeptanz und Verbreitung

Seit der Definition der Binärpräfix sind Hersteller von Betriebssystemen und Speichermedien mehr und mehr dazu übergegangen, für Zweierpotenzen explizit Binärpräfixe zu verwenden und SI-Präfixe nur in dezimaler Bedeutung. Für eine ausführliche Darstellung siehe Artikel „Byte“.

Mathematische Details

Genaue Werte

Die genauen Werte der Binärpräfixe sind gemäß der folgenden Tabelle nach IEC 60027-2 definiert:

Name Symbol Wert
kibi Ki 210 = 10241 = 1.024
mebi Mi 220 = 10242 = 1.048.576
gibi Gi 230 = 10243 = 1.073.741.824
tebi Ti 240 = 10244 = 1.099.511.627.776
pebi Pi 250 = 10245 = 1.125.899.906.842.624
exbi Ei 260 = 10246 = 1.152.921.504.606.846.976
zebi Zi 270 = 10247 = 1.180.591.620.717.411.303.424
yobi Yi 280 = 10248 = 1.208.925.819.614.629.174.706.176

Verhältnis binärer und dezimaler Präfixe

Verhältnis bin : dez
Relative Unterschiede für dez : bin

Die Werte der dezimalen Präfixe steigend – ausgehend von kilo – jeweils um den Faktor und die Werte der binären Präfixe um den Faktor . Aus dieser Tatsache lässt sich leicht eine Formel erstellen, welche das Verhältnis der Präfix-Werte zueinander angibt.

Die folgende Tabelle gibt eine Übersicht über die sich daraus ergebenden Verhältnisse:

Name bin/dez dez/bin Beispiel
Kilobyte, kibibyte 1,024 0+2,4 % 0,977 0−2,3 % 100 kB = 97,7 KiB
Megabyte, mebibyte 1,049 0+4,9 % 0,954 0−4,6 % 100 MB = 95,4 MiB
Gigabyte, gibibyte 1,074 0+7,4 % 0,931 0−6,9 % 100 GB = 93,1 GiB
Terabyte, tebibyte 1,100 +10,0 % 0,909 0−9,1 % 100 TB = 90,9 TiB
Petabyte, pebibyte 1,126 +12,6 % 0,888 −11,2 % 100 PB = 88,8 PiB
Exabyte, exbibyte 1,153 +15,3 % 0,867 −13,3 % 100 EB = 86,7 EiB
Zettabyte, zebibyte 1,181 +18,1 % 0,847 −15,3 % 100 ZB = 84,7 ZiB
Yottabyte, yobibyte 1,209 +20,9 % 0,827 −17,3 % 100 YB = 82,7 YiB

Weblinks

Einzelnachweise

  1. Linux Programmer’s Manual; UNITS(7) (englisch)
  2. ANSI/IEEE Std 1084–1986 IEEE Standard Glossary of Mathematics of Computing Terminology, 30. Oktober 1986. Zitat: kilo (K). (1) A prefix indicating 1000. (2) In statements involving size of computer storage, a prefix indicating 210, or 1024. mega (M). (1) A prefix indicating one million. (2) In statements involving size of computer storage, a prefix indicating 220, or 1,048,576.
  3. International Electrotechnical Commission (IEC), new work item proposal 25/180/NP, Amendment of IEC 60027-2: 2005, 3. Auflage. Letter symbols to be used in electrical technology, Part 2: Telecommunications and electronics – Introduction of prefixes for binary multiples, IEC/TC 25/WG 1, June 1996.
  4. Markus Kuhn: Standardized units for use in information technology. 1996-12-29 [updated 1999-07-19]. [1]
  5. Amendment 2 to IEC 60027-2: Letter symbols to be used in electrical technology – Part 2: Telecommunications and electronics.
  6. IEC 60027-2, Ed. 3.0, (2005-08): Letter symbols to be used in electrical technology – Part 2: Telecommunications and electronics.
  7. Physikalisch-Technische Bundesanstalt: Das Internationale Einheitensystem (SI) (Memento vom 4. März 2016 im Internet Archive; PDF; 1,43 MB), PTB-Mitteilungen 117 (2007), Heft 2, S. 166.
  8. HD 60027-2:2003 (Memento vom 23. Februar 2008 im Internet Archive) Informationen zum CENELEC-Normierungsprozess.
  9. prEN 60027-2:2006 (Memento vom 17. Juni 2008 im Internet Archive) Informationen zum EN-Normierungsprozess.
  10. DIN EN 60027-2:2007-11 Beuth Verlag, Detailanzeige
  11. BIPM – SI-Broschüre, 8. Auflage. März 2006, Abschnitt 3.1: SI-Präfixe. Randnotiz.
  12. bipm.org: BIPM – SI prefixes (Memento vom 7. Juni 2007 im Internet Archive) (englisch)
  13. Le Système international d’unités. 9e édition, 2019 (die sogenannte „SI-Broschüre“), Kapitel 3, S. 31 (französisch) und S. 143 (englisch).