Multiplebyte units  


 
Orders of magnitude of data 
The kilobyte is a multiple of the unit byte for digital information. The International System of Units (SI) defines the prefix kilo as a multiplication factor of 1000 (10^{3}); therefore, one kilobyte is 1000 bytes.^{[1]} The internationally recommended unit symbol for the kilobyte is kB.^{[1]}
In some areas of information technology, particularly in reference to randomaccess memory capacity, kilobyte instead typically refers to 1024 (2^{10}) bytes. This arises from the prevalence of sizes that are powers of two in modern digital memory architectures, coupled with the coincidence that 2^{10} differs from 10^{3} by less than 2.5%. A kibibyte is 1024 bytes.^{[1]}
In the International System of Units (SI) the metric prefix kilo means 1000 (10^{3}); therefore, one kilobyte is 1000 bytes. The unit symbol is kB.
This is the definition recommended by the International Electrotechnical Commission (IEC).^{[2]} This definition, and the related definitions of the prefixes mega (1000000), giga (1000000000), etc., are most commonly used for data transfer rates in computer networks, internal bus, hard drive and flash media transfer speeds, and for the capacities of most storage media, particularly hard disk drives,^{[3]} flashbased storage,^{[4]} and DVDs. It is also consistent with the other uses of the metric prefixes in computing, such as CPU clock speeds or measures of performance.
The international standard IEC 8000013 uses the term "byte" to mean eight bits (1 B = 8 bit). Therefore, 1 kB = 8000 bit. One thousand kilobytes (1000 kB) is equal to one megabyte (1 MB), where 1 MB is one million bytes.
The term 'kilobyte' has traditionally been used to refer to 1024 bytes (2^{10} B).^{[5]}^{[6]}^{[7]} The usage of the metric prefix kilo for binary multiples arose as a convenience, because 1024 is approximately 1000.^{[8]}
The binary interpretation of metric prefixes is still prominently used by the Microsoft Windows operating system.^{[9]} Binary interpretation is also used for randomaccess memory capacity, such as main memory and CPU cache size, due to the prevalent binary addressing of memory.
The binary meaning of the kilobyte for 1024 bytes typically uses the symbol KB, with an uppercase letter K. The B is sometimes omitted in informal use. For example, a processor with 65,536 bytes of cache memory might be said to have "64 K" of cache. In this convention, one thousand and twentyfour kilobytes (1024 KB) is equal to one megabyte (1 MB), where 1 MB is 1024^{2} bytes.
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 2^{10} bytes = 1024 bytes. These prefixes are now part of IEC 8000013. The IEC further specified that the kilobyte should only be used to refer to 1000 bytes. The International System of Units restricts the use of the SI prefixes strictly to powers of 10.^{[11]}