Binary prefix
Binary prefixes (also IEC prefixes or IEC prefixes ) are prefixes for units of measurement (unit prefixes ) that denote multiples of certain powers of two . They are mainly used with units such as bit (symbol “bit”, rarely “b”) or byte (symbol “B”) to measure data volumes , since for technical reasons, powers of two often occur here. Both the name ("kibi", "mebi", ...) and the associated symbol ("Ki", "Mi" ...) are referred to as the unit prefix.
In contrast to this, decimal prefixes designate multiples of certain powers of ten . SI prefixes are decimal prefixes for use in the SI unit system.
Historically, only the SI prefixes were initially used as binary prefixes for data volumes, while the SI prefixes (as decimal prefixes) are used for physical SI units. Later, depending on the context, the SI prefixes were used as a binary prefix and sometimes as a decimal prefix for data volumes. In order to have an alternative to the ambiguous use of the SI prefixes, the IEC defined its own prefixes, which should now only be used as binary prefixes.
IEC prefixes for base 2
The binary prefixes are defined according to the following table according to IEC 60027-2:
Surname | symbol | value |
---|---|---|
kibi | Ki | 2 ^{10} = 1024 ^{1} = 1024 |
mebi | Wed | 2 ^{20} = 1024 ^{2} = 1,048,576 |
gibi | Gi | 2 ^{30} = 1024 ^{3} = 1,073,741,824 |
tebi | Ti | 2 ^{40} = 1024 ^{4} = 1,099,511,627,776 |
pebi | pi | 2 ^{50} = 1024 ^{5} = 1,125,899,906,842,624 |
exbi | egg | 2 ^{60} = 1024 ^{6} = 1,152,921,504,606,846,976 |
zebi | Room | 2 ^{70} = 1024 ^{7} = 1,180,591,620,717,411,303,424 |
yobi | Yi | 2 ^{80} = 1024 ^{8} = 1,208,925,819,614,629,174,706,176 |
Example: 512 MiB (Mebibyte) = 512 · 2 ^{20} bytes = 536,870,912 bytes ≈ 537 MB (megabytes).
Norms
To avoid ambiguity, the International Electrotechnical Commission (IEC) proposed in June 1996 a new draft standard for binary prefixes that should only be used in the binary meaning. This draft was adopted as a standard in December 1998 and published in January 1999 as a supplement to IEC 60027-2 . He introduced the prefixes kibi , mebi , gibi , tebi , pebi and exbi for binary multiples of units. In these designations, the first two letters of the already standardized SI prefixes have been supplemented by “bi” for “binary”. For the symbols of the binary prefixes, the symbols of the SI prefixes were used and the lowercase letter "i" was appended to them, whereby the capital letter "K" was used for the kibi in contrast to the "kilo". The standard also pointed out that the SI prefixes should only be used for multiples based on powers of ten. These additions were integrated into the second edition of the IEC 60027-2 (2000-11) standard published in November 2000. The binary prefixes zebi and yobi were also included in the third edition of the IEC 60027-2 (2005-08) standard published in August 2005 .
Many standardization organizations followed this recommendation. These include the BIPM / CIPM (1998), the IEEE 1541 (2002) and especially in Germany the Physikalisch-Technische Bundesanstalt (2007) (others: NIST , CENELEC , DIN / EN ).
The International Bureau of Weights and Measures (BIPM), which is responsible for the SI prefixes, also expressly advises against the binary use of the SI prefixes and recommends the binary prefixes according to the previous IEC 60027-2, which is implemented by the worldwide ISO, for the designation of powers of two -Standard IEC 80000-13: 2008 (or DIN EN 80000-13: 2009-01) has been replaced with the same wording.
SI prefixes for binary multiples of base 10
Since there were no special unit prefixes for powers of two until 1996, it has become widespread to use the SI prefixes in connection with storage capacities to denote powers of two (with a factor of 2 ^{10} = 1024 instead of 1000), which came closest to the desired powers of two. It should then follow from the combination with the units bit or byte or some other context that a power of two was meant. This binary use of the SI prefixes was also documented in a glossary by the IEEE in 1986 .
While this is not very problematic with memory modules , which are usually only produced in sizes of powers of two, this led to doubts about the exact meaning , for example when specifying hard disk capacities in GB or data transfer rates in MB / s or Mbit / s. In addition, the deviation becomes larger and larger for higher-value prefixes, so that it is often no longer negligible. There are also occasional mixed forms, for example with the storage capacity of a 3.5-inch diskette : 1.44 MB = 1440 kB = 1440 × 1024 bytes.
The International Bureau of Weights and Measures (BIPM) responsible for the SI prefixes therefore expressly advises against this non-standard use of the SI prefixes and recommends the binary prefixes in accordance with IEC 60027-2 for the designation of powers of two.
Nevertheless, this recommended way of naming was not very widespread in 2009 either (see also section Acceptance and Distribution ).
The following table provides an overview with values of the possible SI prefixes and the closest powers of two as well as the percentage (rounded) differences:
Decimal prefixes | Difference rounded |
Binary prefixes according to IEC | ||||
---|---|---|---|---|---|---|
Surname | symbol | Number of bytes | Surname | symbol | Number of bytes | |
kilobyte | kB | 1 000 = 10 ^{30} | 2.4% | Kibibyte | KiB | 1 024 = 2 ^{10} |
megabyte | MB | 1,000,000 = 10 ^{60} | 4.9% | Mebibyte | MiB | 1 048 576 = 2 ^{20} |
Gigabytes | GB | 1,000,000,000 = 10 ^{90} | 7.4% | Gibibyte | GiB | 1 073 741 824 = 2 ^{30} |
Terabytes | TB | 1 000 000 000 000 = 10 ^{12} | 10.0% | Tebibyte | TiB | 1 099 511 627 776 = 2 ^{40} |
Petabytes | PB | 1 000 000 000 000 000 = 10 ^{15} | 12.6% | Pebibyte | PiB | 1 125 899 906 842 624 = 2 ^{50} |
Exabytes | EB | 1 000 000 000 000 000 000 = 10 ^{18} | 15.3% | Exbibyte | Eg | 1 152 921 504 606 846 976 = 2 ^{60} |
Zettabytes | E.g. | 1 000 000 000 000 000 000 000 = 10 ^{21} | 18.1% | Zebibyte | ZiB | 1 180 591 620 717 411 303 424 = 2 ^{70} |
Yottabytes | YB | 1 000 000 000 000 000 000 000 000 = 10 ^{24} | 20.9% | Yobibyte | YiB | 1 208 925 819 614 629 174 706 176 = 2 ^{80} |
- ↑ SI prefixes are only standardized for SI units; Byte is not an SI unit
- ↑ is sometimes abbreviated as "KB"
- ↑ is occasionally (contrary to the standard) abbreviated with "KB", sometimes to distinguish it from "kB"
Another approach that is sometimes used to indicate the intended deviation from the power of ten is to use the capital letter "K" (often only spoken as "Ka") instead of the lowercase letter "k" for the powers of two. For example, “k” can be used for 1000 units and “K” for 1024. However, this convention is neither standardized nor consistently applied. This approach cannot be transferred to the larger prefixes either, since the symbols for the SI prefixes from mega are written in capital letters (“M” for mega, “G” for giga and so on).
Ratio of binary and decimal prefixes
The values of the SI prefixes increase in powers of ten, which is why the SI prefixes are also referred to as decimal prefixes, while the values of the binary prefixes increase in powers of two. Specifically, the values of the decimal prefixes - starting from kilo - each increase by the factor and the values of the binary prefixes by the factor . I.e. kilo equals , mega , giga and so on, and kibi equals , mebi , gibi and so on. Describes the prefixes in such a way that stands for kilo and kibi, for mega and mebi, for giga and gibi and so on, the values of the decimal prefixes result in and the values of the binary prefixes in . From this fact it is easy to create a formula that shows the relationship between the prefix values.
The following table gives an overview of the resulting relationships:
Surname | am: dec | dec: am | example | Difference in% |
---|---|---|---|---|
Kilobytes, kibibytes | 1.024 | 0.977 | 100 kB = 97.7 KiB | +2.4% or −2.3% |
Megabytes, mebibytes | 1.049 | 0.954 | 100 MB = 95.4 MiB | +4.9% or −4.6% |
Gigabyte, gibibyte | 1.074 | 0.931 | 100 GB = 93.1 GiB | +7.4% or −6.9% |
Terabytes, tebibytes | 1,100 | 0.909 | 100 TB = 90.9 TiB | +10.0% or −9.1% |
Petabyte, pebibyte | 1.126 | 0.888 | 100 PB = 88.8 PiB | +12.6% or −11.2% |
Exabyte, exbibyte | 1.153 | 0.867 | 100 EB = 86.7 egg | +15.3% or −13.3% |
Zettabyte, zebibyte | 1.181 | 0.847 | 100 ZB = 84.7 ZiB | +18.1% or −15.3% |
Yottabyte, yobibyte | 1.209 | 0.827 | 100 YB = 82.7 YiB | +20.9% or -17.3% |
Motivation and History
An important component of a computer is the main memory , which today is usually implemented as semiconductor memory . The individual memory cells are addressed with the help of parallel, binary operating lines, which are collectively referred to as the address bus . Memory cells can be addressed with an address bus that has lines . Direct addressable semiconductor memories (RAM, ROM, (E) EPROM) are therefore usually produced in sizes of powers of two. With the increasing size of the memory, due to the lack of standardized alternatives, it became common to use SI prefixes with the memory units bit and byte in order to quantify powers of two, although the SI prefixes are based on powers of ten. In the case of data memories with sequential addressing or the sequential transmission of data, however, there is no reason to work with powers of two, so that the SI prefixes are mostly used in accordance with the standard. This leads to confusion, since it is usually no longer clear even to experts whether the respective SI prefix should be interpreted as a power of ten or, contrary to the norm, as a power of two. Hard drive manufacturers use both systems, powers of ten for memory sizes, powers of two for cache sizes.
For example, three different interpretations have become established in practice for the designation "1.44 MB":
- "1.44 MB" = 1.44 · 1,000,000 B = 1.44 · 10 ^{6} B = 1,440,000 B = 1,440 kB = 1.44 MB
e.g. B. for hard disks , compact disks , DVD and permanent storage media with flash memory , such as USB sticks and SD cards , - "1.44 MB" = 1.44 · 1,048,576 B = 1.44 · 2 ^{20} B = 1,509,949.44 B = 1,474.56 kiB = 1.44 MiB
e.g. B. with main memory (RAM, (EEP-) ROM, caches ...), - "1.44 MB" = 1.44 · 1,024,000 B = 1.44 · 10 ^{3} · 2 ^{10} B = 1,474,560 B = 1,474.56 kB = 1.47456 MB = 1,440 KiB = 1.40625 MiB
as Capacity specification for the classic 3½ ″ floppy disk .
There is also the designation "1 Mb" (with a small "b" for "bit"):
- "1 Mb" = 1,000,000 b
for data transmission, e.g. B. Telecommunication lines and Ethernet , - "1 Mb" = 1,048,576 b
for memory modules, e.g. B. "64-Mb chip".
This inconsistent approach can lead to errors that are difficult to understand when calculating with units, as shown in the following simple example:
A computer user wants to download a file with the specified size of "40 MB" from the Internet and has a data line with a data transfer rate of 8 Mbit / s available. The time required for the complete transfer of this file can be calculated with the conversion 1 B = 8 bit (simplified) as follows:
Here it is necessary to shorten the "MB" in the numerator against the "MB" in the denominator so that the result is. However, if the "MB" in the numerator means a power of two, while the denominator means a power of ten, these units cannot be abbreviated against each other, although this is practically no longer apparent.
There are several options for a clean solution to this problem:
- No prefixes greater than 1
- Use of the power notation
- exclusive and standardized (!) use of the SI prefixes,
- (additional) use of the binary prefixes standardized by the IEC for powers of two.
The introduction of the binary prefixes does not mean that they are intended to replace the SI prefixes for use with bits and bytes. For example, you can specify the size of a 2 ^{30} B working memory with 1,073,741,824 B, about 1074 MB or just practical as exactly 1 GiB. This means that the SI prefixes can always be used clearly in their standardized meaning.
Which information makes more sense depends on the intended use, in particular on whether the background is binary addressing and whether this is relevant (such as the size of a semiconductor memory or the partitioning of a hard disk), or whether this background is no longer is relevant (e.g. when working with files on the same media later). However, working with powers of two can be more cumbersome when adding or subtracting amounts of data with different binary prefixes and when transitioning to larger or smaller binary prefixes than when using the SI prefixes tailored to the decimal system (such as 537 MB).
Acceptance and dissemination
The IEC binary prefixes were hardly accepted in industrial and scientific literature as well as in software until January 2002 at least and were therefore rarely used. Even today, acceptance and spreading has only increased very slowly. In the information for authors, the IEEE specifically requires that SI prefixes be used only for powers of ten, but does not mention the binary prefixes. The computer magazine PC Games Hardware has been using them since October 2007. Apart from that, there are now some programs that support the binary prefixes, e.g. B. the Linux kernel , all Linux distributions, tools based on it such as partitioners ( GParted ), the GNU core utilities , KDE 4, phpMyAdmin , WinSCP and some BitTorrent programs. For Linux, the IEC standard has now been implemented seamlessly and the user can choose the output, or both sizes are displayed. From Mac OS X Snow Leopard (10.6) onwards, macOS goes the opposite way and uses SI prefixes, as they are standardized for SI units, also IEC-compliant only in their decimal meaning.
Web links
- BIPM: SI prefixes
- NIST: Prefixes for binary multiples
- IEC: Prefixes for binary multiples
- Alexey Chernyak: IEC prefixes and symbols for binary multiples
- Stefan Ram: The term “kilobyte” and similar terms
- www.micro-sd.net: Online capacity calculator with decimal and binary prefixes
Individual evidence
- ↑ Hans-Georg Elias: Macromolecules - Physical structures and properties . 6th edition. Wiley-VCH Verlag, Weinheim 2000, ISBN 3-527-29960-2 , pp. 637 ( limited preview in Google Book search).
- ↑ International Electrotechnical Commission (IEC), new work item proposal 25/180 / NP, Amendment of IEC 60027-2: 2005, 3rd edition. 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.
- ^ Markus Kuhn: Standardized units for use in information technology . 1996-12-29 [updated 1999-07-19]. [1]
- ↑ Amendment 2 to IEC 60027-2: Letter symbols to be used in electrical technology - Part 2: Telecommunications and electronics.
- ↑ IEC 60027-2, Ed. 3.0, (2005-08): Letter symbols to be used in electrical technology - Part 2: Telecommunications and electronics.
- ↑ Physikalisch-Technische Bundesanstalt: PTB-Mitteilungen 117 (2007), Issue 2, p. 166. ( PDF ( Memento of the original from March 4, 2016 in the Internet Archive ) Info: The archive link has been inserted automatically and has not yet been checked. Please check Original and archive link according to instructions and then remove this note .; 1.4 MiB)
- ↑ HD 60027-2: 2003 ( Memento of February 23, 2008 in the Internet Archive ) Information on the CENELEC standardization process.
- ↑ prEN 60027-2: 2006 ( Memento from June 17, 2008 in the Internet Archive ) Information on the EN standardization process.
- ↑ DIN EN 60027-2: 2007-11 Beuth Verlag, detailed display
- ↑ BIPM - SI brochure, 8th edition. March 2006, Section 3.1: SI Prefixes. Side note. See also: BIPM - SI prefixes ( Memento of the original from June 7, 2007 in the Internet Archive ) Info: The archive link was inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice.
- ↑ ANSI / IEEE Std 1084-1986 IEEE Standard Glossary of Mathematics of Computing Terminology , October 30, 1986. Quotation: kilo (K). (1) A prefix indicating 1000. (2) In statements involving size of computer storage, a prefix indicating 2 ^{10} , or 1024. mega (M). (1) A prefix indicating one million. (2) In statements involving size of computer storage, a prefix indicating 2 ^{20} , or 1,048,576.
- ↑ BIPM - SI brochure, 8th edition. March 2006, Section 3.1: SI Prefixes. Side note. [2]
- ↑ Berner Zeitung : Is Mebi more than Kibi and less than Gibi? dated November 23, 2009.
- ↑ ^{a } ^{b} Charles M. Kozierok: Binary vs. Decimal Capacity Measurements. In: The PC Guide - Hard Disk Drives. April 17, 2001, accessed March 16, 2014 .
- ↑ tecCHANNEL: From Kibibits and Gibibytes - lack of acceptance , January 30, 2002.
- ^ IEEE Periodicals, Transactions / Journals Department: Information for Authors. Revised: 3/07. ( PDF ( Memento of the original from May 12, 2013 in the Internet Archive ) Info: The archive link has been inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this note. , 448 395 B ≈ 448.4 kB ≈437.9 KiB)
- ↑ The kibibyte is coming. In: PC Games Hardware Forum, October 1, 2007.
- ↑ Linux Programmer's Manual; UNITS (7) (English)
- ^ Coreutils - GNU Core Utilities
- ↑ Can I transfer file larger than 4 GiB (or 2 GiB)?
- ↑ How Mac OS X and iOS report storage capacity