Terminology – bits & bytes

One computer term that, as photographers, we tend to use a lot is “bytes”. More accurately, we talk about kilobytes, megabytes, or even gigabytes. To anyone unfamiliar with computers, these terms will be utterly meaningless! However, it's important to have a rough understanding of what they mean, so let me explain a little about how it all fits together.

Computers are, at their most basic, nothing more than a lot of switches that are either on or off. It's hard to imagine that's so when you look at a modern PC and all that it can do for you. How can Photoshop, with all its clever trickery and filters possible be nothing more than a load of switches that are either on or off? Well, if you take any computer code right down to its most basic level, it will be nothing more than a huge long series of zeroes and ones. A zero can be represented by a switch being in the “off” position, and a one by the switch being in the “on” position.

The mathematical name for the number system that consists of just zeroes and ones is the binary system. (Our decimal system consists of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9.) In the binary system there are just two digits: 0 and 1. These are known as the “binary digits” and, inevitably, someone thought this was a bit of a mouthful so called them “bits”.

Now, a collection of 8 bits is particularly useful to us, as there can be 256 different arrangements of ones and zeroes if you have 8 of them. (Take my word for that!) We can use those 256 different combinations to represent our 26 letters of the alphabet, all our decimal digits, and a host of other characters. A collection of 8 bits is called a “byte”. You can think of a byte as being a single character, or letter.

The problem is that we need to talk about massive -  I mean truly massive - numbers. Just think, for a moment, how many letters there must be in an average book, then bear in mind that most modern PCs could actually store a small library! In much the same way as we wouldn't measure inter-planetary distances in millimetres, we don't talk much about “bytes”. Initially we might use the term “kilobytes”, which is generally taken to mean 1000 bytes. In fact, it's 1024 bytes because that's a convenient number in the binary system, but it's close to our decimal 1000 so that's what we think of it as – 1000 bytes equals 1 kilobyte, or 1Kb.

That won't get us far though. It's still only 1000 characters. The next step is the megabyte, which is 1000 kilobytes. Actually, once again, it's 1024 kilobytes, but let's not split hairs. So we're now up to a million characters which is a lot more useful. Still, though, we're hungry for bigger numbers, and so we have the gigabyte, which is 1000 megabytes. (Again, it's really 1024.) Very soon you're going to be hearing more about terrabytes. You've probably guessed it – a terrabyte is 1000 gigabytes.

In summary then:

8 bits = 1 byte.
1 kilobyte (1Kb)         = 1000 bytes
1 megabyte (1Mb)     = 1000 Kb       = 1,000,000 bytes
1 gigabyte (1Gb)        = 1000 Mb      = 1,000,000 Kb   = 1,000,000,000 bytes
1 terrabyte (1Tb)        = 1000 Gb       = 1,000,000 Mb  = 1,000,000,000 Kb    = 1,000,000,000,000 bytes


Incidentally, you might come across an odd thing with computer hard disks. They are designated as being a particular size, say 500Gb. However, sometimes you'll find that when you check the space on the disk, it seems not to be as big as it is claimed to be. The reason for this is that difference between 1000 and 1024 I mentioned above. All hard disk manufacturers express their hard disk capacities with the assumption that 1Gb = 1000 x 1000 x 1000 bytes. However, many programs running on computers take the purer view that 1Gb = 1024 x 1024 x 1024 bytes, so you can see why there sometimes appears to be a discrepancy. Please don't think you've been sold short!