Binary prefix

(Redirected from Mebi)

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 written and pronounced identically to the SI prefixes, despite such usage not complying with SI standards, however 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, despite the lack of support from official bodies. As a result, there is no unambiguous notation for decimal multiples of bits and bytes.

The names and values of the SI prefixes were defined in the 1960 SI standard, with powers-of-1000 values. As of 2005, standard dictionaries do not recognize the binary meanings for these prefixes.

Contents

Binary prefixes using SI symbols (Non-standard usage but common)

 Name  Symbol Value      Base 16    Base 10  
K
  210 = 1,024  = 162.5   > 103
M
  220 = 1,048,576  = 165   > 106
G
  230 = 1,073,741,824  = 167.5   > 109
T
  240 = 1,099,511,627,776  = 1610   > 1012
P
  250 = 1,125,899,906,842,624  = 1612.5   > 1015
exa
E
  260 = 1,152,921,504,606,846,976  = 1615   > 1018
Z
  270 = 1,180,591,620,717,411,303,424  = 1617.5   > 1021
Y
  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:

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

Bit rates
Decimal prefixes
Name Symbol Multiple
kilobit per second kbit/s 103
megabit per second Mbit/s 106
gigabit per second Gbit/s 109
Binary prefixes
kibibit per second Kibit/s 210
mebibit per second Mibit/s 220
gibibit per second Gibit/s 230
   
Multiples of bytes
as defined by IEC 60027-2
SI prefix   Binary prefixes
NameSymbolMultiple NameSymbolMultiple
kilobytekB103 kibibyteKiB (or KB)210
megabyteMB106 (or 220) mebibyteMiB220
gigabyteGB109 (or 230) gibibyteGiB230
terabyteTB1012 (or 240) tebibyteTiB240
petabytePB1015 (or 250) pebibytePiB250
exabyteEB1018 (or 260) exbibyteEiB260
zettabyteZB1021 (or 270) zebibyteZiB270
yottabyteYB1024 (or 280) yobibyteYiB280
Multiples of bits
SI prefixes Binary prefixes
Name Symbol Multiple Name Symbol Multiple
kilobit kbit 103 (or 210) kibibit Kibit 210
megabit Mbit 106 (or 220) mebibit Mibit 220
gigabit Gbit 109 (or 230) gibibit Gibit 230
terabit Tbit 1012 (or 240) tebibit Tibit 240
petabit Pbit 1015 (or 250) pebibit Pibit 250
exabit Ebit 1018 (or 260) exbibit Eibit 260
zettabit Zbit 1021 (or 270)
yottabit Ybit 1024 (or 280)
   

External links

cs:Binární předpona da:Binært præfiks de:Binärpräfixe es:Prefijo binario fr:Préfixe binaire hu:Bináris prefixum nl:Veelvouden van bytes ja:2進接頭辞 pl:Przedrostek dwójkowy pt:Prefixo binário ro:Prefixe binare ru:Двоичные приставки sk:Binárny prefix