Kilobyte

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Multiples of bytes
Decimal
Value Metric
1000 kB kilobyte
10002 MB megabyte
10003 GB gigabyte
10004 TB terabyte
10005 PB petabyte
10006 EB exabyte
10007 ZB zettabyte
10008 YB yottabyte
Binary
Value IEC JEDEC
1024 KiB kibibyte KB kilobyte
10242 MiB mebibyte MB megabyte
10243 GiB gibibyte GB gigabyte
10244 TiB tebibyte
10245 PiB pebibyte
10246 EiB exbibyte
10247 ZiB zebibyte
10248 YiB yobibyte

The kilobyte is a multiple of the unit byte for digital information. The International System of Units (SI) defines the prefix kilo as 1000 (103); therefore one kilobyte is 1000 bytes. The unit symbol for the kilobyte is kB. In some fields of information technology kilobyte has traditionally also been used to denote 1024 (210) bytes, which arises from binary exponentiation common to digital circuitry. In this context the unit symbol K or KB has been common.

<templatestyles src="Template:TOC limit/styles.css" />

Definitions and usage

1000 bytes

In the International System of Units (SI) the prefix kilo- means 1000 (103); therefore one kilobyte is 1000 bytes in this system. The unit symbol is kB.

This is the definition recommended by the International Electrotechnical Commission (IEC).[1] This definition, and related definitions of prefixes mega- = 1000000, giga- = 1000000000, etc., are used for data transfer rates[2] in computer networks, internal bus, hard drive and flash media transfer speeds, and for the capacities of most storage media, particularly hard drives,[3] flash-based storage,[4] and DVDs. It is also consistent with the other uses of the SI prefixes in computing, such as CPU clock speeds or measures of performance.

The Mac OS X 10.6 file manager is a notable example of this usage in software. Since Snow Leopard, file sizes are reported with decimal prefixes.[5]

1024 bytes

In some fields of information technology, the kilobyte instead refers to 1024 (210) bytes.[6][7][8] This usage originated as compromise jargon for multiples that needed to be expressed in powers of 2, but lacked a convenient unit prefix. As 1024 (210) approximates 1000 (103), the corresponding SI prefixes were used for the multiples that represent powers of 1024.

This definition, and related definitions of mega = 1048576 (=10242), etc., are almost invariably used for random-access memory capacities, such as main memory and CPU cache sizes, due to the binary addressing of memory.[lower-alpha 1] These "binary meanings" of kilobyte, megabyte, etc., are also used by some computer operating systems when reporting disk capacities and file sizes.[9][unreliable source?]

The binary representation of 1024 bytes typically uses the symbol KB (uppercase K). The B is often omitted in informal use. For example, a processor with 65,536 bytes of cache might be said to have "64K" of cache.

kibibyte

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

In December 1998, the IEC addressed such multiple usages and definitions by creating prefixes such as kibi, mebi, gibi, etc., to unambiguously denote powers of 1024.[10] Thus the kibibyte, symbol KiB, represents 210 = 1024 bytes. These prefixes are now part of the International System of Quantities. The IEC further specified that the kilobyte should only be used to refer to 1000 bytes. However, the kilobyte is still commonly used to refer to 1024 bytes.

Examples

  • The HP 21MX real-time computer (1974) denoted 196,608 (which is 192×1024) as 196K,[11] while the HP 3000 business computer (1973) denoted 131,072 (which is 128×1024) as "128K".[12]
  • The Shugart SA-400 5​14-inch floppy disk (1976) held 109,375 bytes unformatted,[13] and was advertised as 110 Kbyte, using the 1000 convention.[14] Likewise, the 8-inch DEC RX01 floppy (1975) held 256,256 bytes formatted, and was advertised as 256k.[15] On the other hand, the Tandon 5​14-inch DD floppy format (1978) held 368,640 (which is 360×1024) bytes, but was advertised as 360 KB, following the 1024 convention.
  • On modern systems, all versions of Microsoft Windows including the newest (as of 2015) Windows 10 divide by 1024 and represent a 65,536-byte file as 64 KB.[16] Conversely, Mac OS X Snow Leopard and newer represent this as 66 kB, rounding to the nearest 1000 bytes.[17]

See also

Notes

  1. Exceptions did exist for machines that used decimal addressing, such as the IBM 1401. A "12 K" 1401 has 12,000 characters of memory.

References

  1. Prefixes for Binary Multiples — The NIST Reference on Constants, Units, and Uncertainty
  2. Conversion of Data Transfer Rate Units
  3. 1977 Disk/Trend Report Rigid Disk Drives, published June 1977
  4. SanDisk USB Flash Drive "Note: 1 megabyte (MB) = 1 million bytes; 1 gigabyte (GB) = 1 billion bytes."
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Kilobyte – Definition and More from the Free Merriam-Webster Dictionary. Merriam-webster.com (2010-08-13). Retrieved on 2011-01-07.
  7. Kilobyte | Define Kilobyte at Dictionary.com. Dictionary.reference.com (1995-09-29). Retrieved on 2011-01-07.
  8. Definition of kilobyte from Oxford Dictionaries Online. Askoxford.com. Retrieved on 2011-01-07.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found. "In December 1998 the International Electrotechnical Commission (IEC) [...] approved as an IEC International Standard names and symbols for prefixes for binary multiples for use in the fields of data processing and data transmission."
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. http://www.swtpc.com/mholley/SA400/SA400_Datasheet.pdf
  15. http://bitsavers.org/pdf/dec/disc/rx01/EK-RX01-MM-002_maint_Dec76.pdf
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.