Binary prefix
From Freepedia
In computing, binary prefixes can be used to quantify large numbers where powers of two are more useful than powers of ten. They are often wrongly written and pronounced identically to the SI prefixes, but each successive prefix is multiplied by 1024 (210) rather than 1000 (103).
Using the prefixes kilo-, mega-, giga-, etc., and their symbols K, M, G, etc. (see below for the peculiarities of "K"), in the binary sense can cause serious confusion. In January 1999, the International Electrotechnical Commission introduced the prefixes kibi-, mebi-, gibi-, etc., and the symbols Ki, Mi, Gi, etc. to specify binary multiples of a quantity. [1] They have since been officially adopted by many other organizations, most notably the Institute of Electrical and Electronics Engineers, see standard IEEE 1541. However, they have not been widely adopted and many people continue to use the SI prefixes in a binary sense, even though such usage does not accord with dictionaries, nor with the definitions established when the SI was created in 1960. As a result, there is no unambiguous notation for decimal multiples of bits and bytes.
Contents |
Binary prefixes using SI symbols (Non-standard usage but common)
| Name | Symbol | Value | Base 16 | Base 10 |
|---|---|---|---|---|
| 210 = 1,024 | = 162.5 | > 103 | ||
| 220 = 1,048,576 | = 165 | > 106 | ||
| 230 = 1,073,741,824 | = 167.5 | > 109 | ||
| 240 = 1,099,511,627,776 | = 1610 | > 1012 | ||
| 250 = 1,125,899,906,842,624 | = 1612.5 | > 1015 | ||
| 260 = 1,152,921,504,606,846,976 | = 1615 | > 1018 | ||
| 270 = 1,180,591,620,717,411,303,424 | = 1617.5 | > 1021 | ||
| 280 = 1,208,925,819,614,629,174,706,176 | = 1620 | > 1024 |
The one-letter abbreviations are identical to SI prefixes, except for "K", which is used interchangeably with "k" (in SI, "K" stands for the kelvin, and only "k" stands for 1000). Some have suggested that "k" be used for 1000, and "K" for 1024, but this cannot be extended to the higher order prefixes and has never been widely recognised.
Notice that as the order of magnitude increases, the percentage difference between the binary and decimal values of a prefix increases, from 2.4% at kilo to over 20.8% at yotta.
Approximate ratios between binary prefixes and their decimal equivalent
| Name | Bin > Dec | Dec > Bin | Example | Percentage difference |
|---|---|---|---|---|
| kilobyte : kibibyte | 1.024 | 0.976 | 100 KB = 97.6 KiB | 2.4% |
| megabyte : mebibyte | 1.049 | 0.954 | 100 MB = 95.4 MiB | 4.9% |
| gigabyte : gibibyte | 1.074 | 0.931 | 100 GB = 93.1 GiB | 7.4% |
| terabyte : tebibyte | 1.100 | 0.909 | 100 TB = 90.9 TiB | 10% |
Informally, the prefixes are often used on their own. Thus one might hear about "a 40K file" (40 binary kilobytes) or "a 2M Internet connection" (2 decimal megabits per second). What units are being used, and whether the multipliers are decimal or binary, depends on exactly what is being measured.
IEC standard prefixes
In 1999, the International Electrotechnical Commission (IEC) published Amendment 2 to "IEC 60027-2: Letter symbols to be used in electrical technology – Part 2: Telecommunications and electronics". This standard, which was approved in 1998, introduced the prefixes kibi-, mebi-, gibi-, tebi-, pebi-, exbi-, to be used in specifying binary multiples of a quantity. The names come from the first two letters of the original SI prefixes followed by bi which is short for "binary". It also clarifies that, from the point of view of the IEC, the SI prefixes only have their base-10 meaning and never have a base-2 meaning.
This amendment was included in the next edition of the standard: "IEC 60027-2 (2000-11) Ed. 2.0"
As of 2005 this naming convention has not gained widespread use, but its use is growing. It is strongly supported by many standardization bodies, including IEEE and CIPM. In particular on March 19, 2005 the IEEE standard IEEE 1541-2002 (Prefixes for Binary Multiples) has been elevated to a full-use standard by the IEEE Standards Association after a two-year trial period.
| Name | Symbol | Value |
|---|---|---|
| kibi | Ki | 210 = 1,024 |
| mebi | Mi | 220 = 1,048,576 |
| gibi | Gi | 230 = 1,073,741,824 |
| tebi | Ti | 240 = 1,099,511,627,776 |
| pebi | Pi | 250 = 1,125,899,906,842,624 |
| exbi | Ei | 260 = 1,152,921,504,606,846,976 |
Example : 300 GB = 279.5 GiB (= 0x117.6592E GiB = 0x45D96.4B8 MiB = 0x1176592E KiB = 0x45D964B800 bytes).
Note that the IEC names are defined only up to exbi-, corresponding to the SI prefix exa-. The two SI prefixes zetta- (1021) and yotta- (1024) have no corresponding IEC binary prefixes, though the obvious continuation would be zebi- (Zi = 270 = 1,180,591,620,717,411,303,424) and yobi- (Yi = 280 = 1,208,925,819,614,629,174,706,176).
Usage notes
We will use the phrase "decimal unit" to mean "SI designation understood in its standard, decimal, power-of-1000 sense" and "binary unit" to mean "SI designation understood in its traditional computer-industry, binary, power-of-1024 sense." Also following the tradition of computer confusion, the symbol for byte used here is B, which in most other contexts stands for the bel — although its sub-unit, the decibel ("dB"), is almost universally used instead, preventing confusion between the symbols. It has often been recommended to use b for the byte to prevent confusion with the bel, but that is also sometimes used for the bit, which would cause further confusion in computing contexts. b also stands for bar, a unit of pressure used by meteorologists in the US, although the fractional unit millibar is more often used. It is recommended by several standards bodies to use bit and B to keep the units very distinct, as in kbit or MiB. This issue is not about to be resolved, as SI does not deal with units of quantity of information.
Certain units are always understood as decimal even in computing contexts. For example, hertz (Hz), which is used to measure clock rates of electronic components, and bit/s, used to measure bit rate. So a 1 GHz processor performs 1,000,000,000 clock ticks per second, a 128 kbit/s MP3 stream consumes 128,000 bits (15.625 KiB) per second, and a 1 Mbit/s Internet connection can transfer 1,000,000 bits (approx. 122 KiB) per second (assuming an 8-bit byte, and no overhead).
Measurements of most types of electronic memory such as RAM and ROM and Flash (large scale disk like flash is sometimes an exception) are given in binary units because they are made power-of-two sizes as this meant that all combinations of their address lines would map to a valid addresss allowing easy aggregation into a larger contiguous block of memory.
Hard disk drive manufacturers state capacity in decimal units. Since most computer operating systems report drive usage and capacity in binary units, the difference causes an apparent loss between the advertised capacity and the formatted, usable capacity. This usage has a long engineering tradition, predating consumer complaints about the apparent discrepancy, which began to surface in the mid-1990s. The decimal-based capacity in hard disk drives follows the method used for serially accessed storage media which predated direct access storage media like hard disk drives. Paper punch cards could only be used in a serial fashion, like the magnetic tapes that followed. When a stream of data is stored, it's more logical to indicate how many thousands, millions, or billions of bytes have been stored versus how many 1024, 1,048,576, or 1,073,741,824 bytes have been. When the first hard disk drives were being developed, the decimal measurement was only natural since the hard disk drive served essentially the same function as punch cards and tapes. Thus, today, any device that is addressed or seen as "storage" uses the decimal system to identify capacity.
Disk media are accessed by the sector, not the individual byte. Sectors are intended for direct transfer to RAM, which comes in powers of two, so sector size itself is almost always a power of two (some early 1960s sectors measured 100 bytes [2]). Common sector sizes range from 512 bytes (e.g. on floppy disks) to 2048 bytes (DVDs). Because of this, a very confusing hybrid system is sometimes used, in which a "megabyte" means a thousand 1024-byte "kilobytes". Thus, as of 2005, manufacturers universally use the designation "1.44 MB diskette" for a product which holds neither 1.44×220 bytes nor 1.44×106 bytes, but rather 1.44×1000×1024 bytes (approximately 1.406 MiB, or 1.475 MB).
Modern-day PC users, of course, regard both RAM and disk as kinds of storage and expect their capacities to be measured in the same way. Operating systems usually report disk space using the binary version. To the purchaser of a "30 GB" hard drive, rather than reporting either "30 GB" or "28 GiB", Microsoft Windows reports "28 GB". This creates hard feelings that have even led to legal disputes, sometimes made worse by other technical issues such as failure to distinguish between unformatted and formatted capacities and to account for the overhead inherent in disk file systems.
CD capacities are always given in binary units. A "700 MB" (or "80 minute") CD has a nominal capacity of about 700 MiB. But DVD capacities are given in decimal units. A "4.7 GB" DVD has a nominal capacity of about 4.38 GiB.
Bus bandwidth is given in decimal units. This is not because hard drive capacities use the decimal versions, nor because bit rates do, but because clock speeds do. For example, "PC3200" memory runs on a double pumped 200 MHz bus, transferring 8 bytes per cycle, and hence has a bandwidth of 200,000,000×2×8 = 3,200,000,000 byte/s.
Legal disputes
As a result of the confusion over decimal and binary capacity measures, there have been several lawsuits against companies who sell hard drives, Flash memory devices, and computer systems that list the drive capacity. As consumers become less and less technical, the technical definitions of binary and decimal multiples have become meaningless and only the number reported by the operating system holds sway.
At least 2 significant lawsuits have been filed:
- On February 20, 2004, Willem Vroegh filed a lawsuit against Lexar Media, Dane–Elec Memory, Fuji Photo Film USA, Eastman Kodak Company, Kingston Technology Company, Inc., Memorex Products, Inc.; PNY Technologies Inc., SanDisk Corporation, Verbatim Corporation, and Viking InterWorks alleging that their descriptions of the capacity of their flash memory cards were false and misleading.
- As of early 2005, at least one of these companies has settled out of court.
- In September of 2003, Lanchau Dan, Adam Selkowitz, Tim Swan and John Zahabian filed a lawsuit against Dell, Inc., Apple Computer Inc., Gateway, Inc., Hewlett-Packard Co., IBM Corp., Sharp Corporation, Sony Corp. and Toshiba Corp claiming their advertising deceptively exaggerates the real capacity of their hard drives.
References
- ^ Amendment 2 to IEC International Standard IEC 60027-2: Letter symbols to be used in electrical technology — Part 2: Telecommunications and electronics [3]
See also
Specific units of IEC 60027-2 A.2
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
External links
- What is a Megabyte ...? Markus Kuhn's 1996-1999 paper on bits, bytes, prefixes and symbols
- Prefixes for binary multiples - NIST
- Get Ready for the mebi, gibi and tebi - NIST
- Description of binary prefixes - IEC
- Another description of binary prefixes
- White-paper on the controversy over drive capacities
- There is no such thing as a 1.44 MB standard format floppy disc
- A summary of the organizations, software, and so on that have implemented the new binary prefixes
- A plea for sanity
- KiloBytes vs. kilobits vs. Kibibytes (Binary prefixes)



