Suchen Sie nach Erläuterungen zu Binärpräfix Logik / Geschichte vs. SI-Präfix

1204
Joe

Vor kurzem habe ich mir die SI- und Binary-Präfixe für digitale Speicherung / Datenverarbeitung im Allgemeinen angesehen, und ich bin mir immer noch nicht sicher, ob ich die Logik hinter dem Binary-Präfix verstehe (eigentliche Frage unten).

Aktuelles Verständnis (zusammengefasst):

SI:

Es scheint ziemlich einfach zu sein, jedes Mal, wenn Sie mit 'total # oftes == aktueller Präfixwert * 1,000' enden: Verwenden Sie das nächstgrößere Präfix, das als '1000 ^ 1 + die Anzahl der bereits verwendeten SI-Präfixe ausgedrückt werden kann in Kilo '. Einfach genug.

Binär:

Anscheinend funktioniert Speicher anscheinend besser / einfacher, wenn Dateneinheiten verwendet werden, die Potenzen von 2 sind (die Erklärung der 'Systemarchitektur' ist ehrlich gesagt über meinen Kopf, also nehme ich einfach ihr Wort dafür an). In den frühen Tagen der Computer vor der offiziellen Etablierung von Binär-Präfixen, einer Maschine mit 1024 Byte Speicher (die die kleinste Speichermenge mit einer Potenz von 2 darstellen würde, die 1000 Byte bricht), entschieden sich die Entwickler für die Verwendung der bereits bestehenden SI Standards und beschreiben diese Menge an Speicher als kB, obwohl sie eigentlich nicht gleich sind (es war mehr oder weniger "nahe genug").

An diesem Punkt bricht mein Verständnis zusammen. Ich denke, da die SI-Standards mit der Formel (Basis 1000 ^ 1 + verwendetes Präfix #) zum nächsten Präfix "aufsteigen", ist das Äquivalent in Binary (Basis 1024 ^) 1 + verwendetes Präfix #) seit 1024 liegt näher an 1000 als 512 oder 2048 bei Verwendung von Potenzen von 2 und bezieht sich daher enger auf die SI-Formel.

Aktuelle Frage:

Wenn dies richtig ist, warum also überhaupt binäre Präfixe verwenden? Ist es wirklich so "schlecht", nur "1.024 kB" anstelle von 1 KiB (oder was auch immer Sie messen) zu sagen? Ich nehme an, dass die Auflistung von 4 GiB RAM als 4,29497 GB ein bisschen doof ist (ist das der Grund? Ist es einfacher, gerundete Zahlen zu verwenden?). Das ist, und ist mein allgemeines Verständnis dieser Präfixstandards richtig?

Jede Klarstellung ist dankbar für das Lesen.

2
What, exactly, is your question? “Why use Binary prefixes at all?” Seriously? K means 1000, M means 1,000,000, etc. (from the Latin). They were used to mean 1024, 1024², etc., because they were “close enough” — but the higher you go, the greater the discrepancy. People introduced the binary terms to create formalisms to replace the ways the terms were used informally. It seems that you know the answer. Do you really believe that it is OK to refer to 2³² (i.e., 2^32) as 4.29497 G (which is still only an approximation; the exact value is 4.294967296 G) when you can refer to it *exactly* as 4 Gi? Scott vor 7 Jahren 0
@Scott: Dein Punkt zur Rundung ist gut aufgenommen. Ich nehme an, es gibt Situationen, in denen ein Verbraucher eine "500 GB-Festplatte" kauft und sich dann unter Windows umschaut, ob er nicht über 500 GB Speicher verfügt, da Windows auch GB anzeigt, wenn er GiB anzeigt. Oder wie Ram diese Liste '4GB', wenn sie auch 4GiB bedeutet. Im Wesentlichen scheint es, dass der Binary-Standard in der praktischen Anwendung ignoriert wird. Wenn GiB als GB angezeigt wird, rundet die Person, die die Spezifikation schreibt, bereits die Anzahl der Bits. Warum nicht einfach den einen oder anderen Standard an diesem Punkt verwenden, wenn wir den einen oder anderen ignorieren? Joe vor 7 Jahren 0

1 Antwort auf die Frage

3
Scott

Nun, wir verwenden die SI- Begriffe (auch als dekadisch oder metrisch bezeichnet ), weil sie die korrekten Begriffe für Gewichte und Maße sind (ein Kilogramm = 1000 Gramm, ein Kilometer = 1000 Meter usw.) und weil sie schon lange auf dem Markt sind (Die Kilo- und Milli- Präfixe wurden im 17. Jahrhundert eingeführt und stammen aus dem Griechischen und dem Lateinischen, die vor 2K Jahren [har har] verwendet wurden). Wir verwenden die binären Ausdrücke, wenn sie angemessen sind (in Computerkontexten), weil sie in diesen Kontexten die richtigen sind.

Die binären Ausdrücke wurden jedoch vor weniger als 20 Jahren eingeführt und vor weniger als zehn Jahren formalisiert . Und es sind keine neuen Begriffe, die zu neuen Konzepten passen (wie zum Beispiel „Laser“ war). Sie sind neue Begriffe für etablierte Konzepte (für die die falschen Wörter verwendet wurden). Daher werden sie sich langsam durchsetzen (weil viele Leute immer noch die alten Begriffe falsch verwenden).

Was mich daran erinnert: Sie scheinen verwirrt zu sein. Wenn jemand "4 GB" sagt, wenn er 4.294.967.296 Bytes bedeutet, "rundet" er die Zahl nicht, weil er nicht "4.294967296 GB" bedeutet. Er bedeutet "4 GiB" und verwendet den falschen Begriff. Weil er die neuen Begriffe noch nicht gelernt hat oder nicht versteht, warum der Unterschied so wichtig ist, oder weil er Angst hat, dass die Leute, mit denen er spricht, „GB“ verstehen, aber nicht „GiB“. Das System der binären Ausdrücke wird nicht ignoriert. Es ist immer noch im Prozess, gelernt, akzeptiert und adoptiert zu werden .

Dies wird in Wikipedia ausführlich behandelt. Zum Beispiel im binären Präfixartikel :

Die Computerindustrie hat die Einheiten Kilobyte, Megabyte und Gigabyte sowie die entsprechenden Symbole KB, MB und GB in mindestens zwei geringfügig unterschiedlichen Messsystemen verwendet. In Gigabyte bedeutet Gigabyte in Anführungszeichen der Hauptspeicherkapazität (RAM) üblicherweise 1 073 741 824 Bytes. Da dies die dritte Potenz von 1024 ist und 1024 eine Potenz von zwei (2 10 ) ist, wird diese Verwendung als binärer Präfix bezeichnet.

In den meisten anderen Kontexten verwendet die Industrie die Multiplikatoren Kilo, Mega, Giga usw. in einer Weise, die ihrer Bedeutung im Internationalen Einheitensystem (SI) entspricht, und zwar als Potenz von 1000. Beispielsweise eine 500-Gigabyte-Festplatte hält 500 000 000 000 Bytes, und eine 1 Gbit / s (Gigabit pro Sekunde) Ethernet-Verbindung überträgt Daten mit 1 000 000 000 Bit / s. Im Gegensatz zur binären Präfixverwendung wird diese Verwendung als Dezimalpräfix beschrieben, da 1000 eine Potenz von 10 (10 3 ) ist.

Die Verwendung derselben Einheitspräfixe mit zwei verschiedenen Bedeutungen hat zu Verwirrung geführt. Ab etwa 1998 widmeten sich die International Electrotechnical Commission (IEC) und mehrere andere Normen- und Handelsorganisationen der Mehrdeutigkeit, indem sie Standards und Empfehlungen für eine Reihe von binären Präfixen veröffentlichten, die sich ausschließlich auf 1024 beziehen. Dementsprechend das US National Institute of Standards and Technology (NIST) erfordert, dass SI-Präfixe nur im dezimalen Sinn verwendet werden: [1] Kilobyte und Megabyte bezeichnen eintausend Bytes bzw. eine Million Bytes (im Einklang mit SI), während neue Ausdrücke wie Kibibyte, Mebibyteund Gibibyte mit den Symbolen KiB, MiB und GiB bezeichnen 1024 Bytes, 1048 576 Bytes bzw. 1 073 741 824 Bytes. [2]   2008 wurden die IEC-Präfixe in die Norm IEC 80000-13 aufgenommen .

[Wikipedia verwendet vermutlich die Konvention des Schreibens großer Dezimalzahlen mit Gruppen von drei Ziffern, die durch Leerzeichen getrennt sind, um die Menschen zu respektieren, die .anstelle von ,"Tausendertrennzeichen" verwendet werden.]

Ähnliche Absätze erscheinen auf anderen Seiten. In Metrik-Präfix :

In einigen Bereichen der Informationstechnologie war es üblich, für einige SI-Präfixe (Kilo, Mega, Giga) nicht-dezimale Vielfache auf der Grundlage von Potenzen von 1024 anstelle von 1000 zu bestimmen, im Gegensatz zu den Definitionen im Internationalen Einheitensystem (SI) ). Diese Praxis wurde von einigen Industrieverbänden, darunter auch JEDEC, sanktioniert . Die International Electrotechnical Commission (IEC ) hat zu diesem Zweck das System der binären Präfixe (Kibi, Mebi, Gibi usw.) standardisiert . [23]

Und in Kilo- :

Eine zweite Definition wurde in einigen Bereichen der Informatik und Informationstechnologie allgemein verwendet, was jedoch nicht mit der SI-Definition übereinstimmt. Es verwendet Kilo als Bedeutung von 2 10 = 1024, da mathematisch gesehen 2 10 etwa 10 3 beträgt . Der Grund für diese Anwendung ist, dass binäre Werte, die bei der Berechnung nativ verwendet werden, die Basis 2 und nicht die Basis 10 sind, die für die SI-Präfixe verwendet wird . Das NIST kommentiert diese Verwirrung: „Angesichts dieser Realität steht das IEEE Standards Boardentschied, dass die IEEE-Standards die konventionellen, international anerkannten Definitionen der SI-Präfixe verwenden werden “, statt 1024 für Kilo. [4]

Weitere Wikipedia-Ressourcen:

Dies wurde auch schon bei Super User angesprochen:

Und zum Lachen siehe diesen xkcd-Comic : (Aber natürlich nicht ernst nehmen).

Wow, sehr gründliche Post. Vielen Dank für die Klarstellungen, ich schätze die Mühe sehr. Eine letzte Anmerkung zum Thema "Rundung", nur um das "4GB" -Beispiel deutlich zu machen: Ich spreche von Situationen wie dem Lesen von Ram-Spezifikationen auf der Website eines Herstellers. Sie nennen Ram als "4GB". Ich bin sicher, dass sie das tun, weil sie wissen, dass die meisten Verbraucher nicht wissen, was GiB bedeutet, aber sie könnten immer noch 4.xx GB auf die Spezifikation setzen (scheint etwas zu sein, was die Marketingabteilung tun würde, weil 'mehr besser ist'). Trotzdem führen sie es immer noch als 4 GB auf. Ich erkläre das wahrscheinlich nicht gut, aber Ihre Erklärung ist gut aufgenommen. Joe vor 7 Jahren 0
Auch dieser Comic ist großartig. Joe vor 7 Jahren 0