Traditionally, one gigabyte has been defined as 10233 bytes or 1,073,741,824 bytes or 230 bytes. This is the definition commonly used for computer memory and file sizes. Then in December 1998 the International Electrotechnical Commission (IEC), the leading international organization for worldwide standardization in electrotechnology, introduced new symbols and prefixes for binary multiples and changed the earlier ones. According to the new definitions, one gigabyte no longer equals 10233 bytes but 10003 bytes and 10233 bytes is now represented by a new term called gibibyte. The new prefixes for measurement of bytes are shown in the table below.
That explains one common anomaly in size measurement that we notice every day in our lives, that is, in the measurement of hard disk size. You go and buy a 160GB hard disk, but when you plug in to your computer and turn it on you find your operating system reports only 149GB. That's because hard disk manufacturers no longer use the old convention of measuring sizes but the brand new ones. When a hard disk is labeled 160GB it has a capacity of 160 x 10003 bytes and not 160 x 10243 bytes, because like I explained, 1GB is not equal 10243 bytes. So a 160GB hard disk has a capacity of 160 x 10003/10243 bytes or 149 GiB (gibibytes).
The IEC binary naming convention however, is not widespread and most publications, computer manufacturers and software companies prefer to use the traditional units. For instance, the memory (RAM) manufacturers continue to use the old naming convention. So when you buy 1GB of memory you get 10243 bytes of RAM. There is however a good explanation for this discrepancy. Computer memory is addressed in base 2, due to its design, so memory size is always a power of two. It is thus convenient to work in binary units for RAM. Other computer measurements, like storage hardware size, data transfer rates, clock speeds, operations per second, etc., do not have an inherent base, and are usually presented in decimal units.
To add to the confusion, different softwares as well as hardware manufacturers use different unit of measurement. Examples of software that use IEC standard prefixes (along with standard SI prefixes) include the Linux kernel, GNU Core Utilities, Launchpad, GParted, ifconfig, Deluge (BitTorrent client), and BitTornado. Other programs like fdisk and apt-get use SI prefixes with their decimal meaning.
Screenshots of Gnome Partition Editor and Windows Disk Management show how different software utilities use different measurement for hard disk capacities
Floppy disks uses the binary system of measurement. A 1.44MB floppy disk has a capacity of 144,000,000 bytes which is equal to 1.38 MiB (mebibytes); notice that the operating system reports this as 1.38MB.
CD capacities are always given in binary units. A "700 MB" (or "80 minute") CD has a nominal capacity of about 700 MiB (approx 730MB). But DVD capacities are given in decimal units. A "4.7 GB" DVD has a nominal capacity of about 4.38 GiB.
Network speeds use the binary units of measurement. A 1Mbps internet connection has a throughput of 1,000,000 bits (125 kB, approx 122 KiB) per second assuming an 8-bit byte, and no overhead.
All these ambiguity in measurements have led to consumer confusion and there actually have been two significant class action lawsuits against digital storage manufactures by consumers. One case involved flash memory and the other involved hard disk drives. Both were settled with the manufactures agreeing to clarify the storage capacity of their products on the consumer packaging. But most hard disk manufacturers still continue to use decimal prefixes to identify capacities, with no mention of capacities in terms of gibibytes.
Prefixes for binary multiples