Cartoon - What's Up With The Kb?
Written by Alex Armstrong   
Sunday, 10 June 2012

In these days of Terabyte disc drives it hardly seems worth arguing over the difference between 1024 and 1000 bytes - but it does make a difference.

This week's xkcd cartoon makes fun viewing, but it makes sense only if you understand how we count in binary - or don't.




There are lots of reasons why a kilobyte of anything is 1024 and not 1000. The best reason is that if you are working with memory the amount of memory that you can address doubles each time you add an address line or address bit. So with one ad dress bit you can select one of two locations. With two address bits you can select one of four and so on:


Number of bits Max size of memory
1 2
2 4
3 8
4 16
5 32
6 64
7 128
8 256
9 512



So now you can see where 1024 comes from. It is also 210 and the closest power of 2 to 1000, which is the unit we ten-fingered machines like to work with.

In particular 1kB of memory is 1024 memory locations except during a leap year as the cartoon suggests. But joking aside, why should 1kB ever be understood as 1000 bytes?

The answer is that disk drive manufacturers suddenly started to report the size of disks using 1000byte kilobytes.


Well, see if you can guess why.

Consider a hard disk which offers 1 GByte of storage. If you stick to the binary definition of 1 kByte this should be

1024*1024*1024 of storage, or 1,073,741,824 bytes.
It would be if you were buying a computer that had 1GByte of memory, but for a disk drive 1GByte=1000*1000*1000=1,000,000,000.  So that means using the decimal definition leaves you short of 73,741,824 Bytes or more than 70 MBytes of storage. 

If you repeat the calculation for 1 TByte of disk storage you will discover that there are over 92 GBytes missing - which is quite a lot of storage.

Now perhaps the Drivemaker's kilobyte line in the cartoon table makes more sense.

But what about the Intel kilobyte. This is a reference to the Pentium FDIV bug which affected the Intel p5 Pentium floating point unit,  due to missing entries in the lookup table used by the digital divide operation algorithm and produced incorrect results.

Some other questions to that need dealing with.

Who is Kelly-Bootle?

He wrote a funny book called The Devil's DP Dictionary which contained lots of strange definitions relating to "data processing", the term given to hardware and software before it became IT. If you are interested, there are a handful of the original book, now over 30 years old, on Amazon and a newer edition, The Computer Contradictionary, is still available.

And finally, for anyone not familiar with the term "Baker's Dozen", it is the practice of baking 13 loaves when only 12, i.e. a Dozen, were called for. Hence a Baker's Byte would have 9 rather than 8 bits, perhaps counting the parity bit.


Further Reading

Binary Arithmetic

Computer Memory and Pigeonholes


To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin,  or sign up for our weekly newsletter.




ACM Adopts Open Access Publishing Model

ACM, the Association for Computing Machinery, the professional body for computer scientists, has relaunched Communications of the ACM, the organization’s flagship magazine, as a web-first  [ ... ]

Falco On Track To Version 1.0.0

Falco is a cloud native runtime security tool for the Linux operating system, designed to detect abnormal behavior and warn of potential security threats in real-time. Now it's about to release its fi [ ... ]

More News


raspberry pi books



or email your comment to:





Last Updated ( Sunday, 25 October 2015 )