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.




CNIL Publishes GDPR Guide For Developers

The GDPR is a headache for developers. It's just not clear enough what we have to do to keep our apps compliant. Fortunately CNIL has published a detailed guide for just this case.

Eclipse IoT Developer Survey 2020

The Eclipse Foundation’s IoT Working Group has released the results of its 2020 IoT Developer Survey. Agriculture emerges as the leading industry focus area and security as the top concern. Two thir [ ... ]

More News






or email your comment to:





Last Updated ( Sunday, 25 October 2015 )