What's a [[MiB]]? Is it the same as a MB?

1 MiB is the new name for what always used to be known (erroneously) as 1 MB. It's 1024*1024 bytes.

In fact, it's one of a set of new names for binary quantities, standardised by the IEC (in IEC 60027-2), and submitted to IEEE for standardisation.

Decimal Prefixes

Name

symbol

value

kilo-

k

10^3 = 1000

mega-

M

10^6 = 1000000

giga-

G

10^9 = 1000000000

tera-

T

10^12 = 1000000000000

peta-

P

10^15 = 1000000000000000

exa-

E

10^18 = 1000000000000000000

zetta-

Z

10^21 = 1000000000000000000000

yotta-

Y

10^24 = 1000000000000000000000000

Binary Prefixes

Name

symbol

value

kibi-

Ki

2^10 = 1024

mebi-

Mi

2^20 = 1048576

gibi-

Gi

2^30 = 1073741824

tebi-

Ti

2^40 = 1099511627776

pebi-

Pi

2^50 = 1125899906842624

exbi-

Ei

2^60 = 1152921504606846976

Why did they do that? What's the point?

Well, other than the fact that standards people are notoriously picky, it is getting increasingly awkward to reconcile the sizes of the (correct) decimal sizes and the binary values. The 2.4% error in calling something a kbyte rather than a Kibyte is (barely) acceptable. The 10% error between a Tbyte and a Tibyte is not.

If you want a further example of why using the SI decimal prefixes for binary values is wrong, consider the humble high-density 90mm (3.5″) floppy disk. These are commonly described as 1.44MB. WRONG. The capacity of a HD 90mm floppy is 1.44 * 1000 * 1024 bytes. If that doesn't convince you that something's wrong, nothing will.

Note that the much-reviled decision of storage manufacturers to describe their hard disk sizes in units of 10^9 bytes as gigabytes is actually the correct usage of the prefix.

Please try to use the correct binary prefixes when appropriate. It will be a great day when we can finally get rid of the erroneous and confusing usage of the decimal prefixes to describe binary multiples of data.

Units

There is a further problem regarding the symbol for the units being used. One (non-standardised) suggestion is for:

Unit

Symbol

b

bit

B

byte

o

octet (8 bits)

However, this won't be picked up by the SI or ISO, since B is already in use for Bel (as in dB, decibel). Another suggestion is to use b for byte, and write "bit" out in full.

Further reading

http://members.optus.net/alexey/prefBin.xhtml

BinaryUnits (last edited 2005-03-25 13:57:20 by 81)