We continue with our binary course. We have already seen ways to represent numbers, positional notation and the concept of base, and digital numbering systems, and that there are multiple systems to represent the same number.
Of them, the binary system we know is “special” (if not, this course would be about gardening and daisies 🌻, and not binary numbers).
But why is the binary system special? Why is base 2 so important today? Well, mainly due to two reasons that we will see below 👇
It is the minimum base for positional notation
The first thing that makes the binary system special compared to any other base is that it is the minimum for the positional notation system to work. So, right from the start, it is special.
We could have base 10, base 12, base 1374… But you cannot have base 0 or base 1. The minimum for positional notation to work is 2.
You might think… “well, I could count with only one symbol.” I can take one symbol, for example 0
, and put as many 0
s as I need. That’s it! Base 1.
No, you couldn’t; you cheated. You used empty
and 0
. That is a base 2, you have two symbols. To make it clearer, imagine you have 16 memory cells to store your number.
0000000000000000
If you can only put 0
, if you cannot change to another symbol, you cannot store a number. If I don’t have at least two symbols (empty
works for me as a symbol) I cannot create a numbering system.
The binary system is the simplest and the minimum necessary to have a numbering system. Therefore, it is logical that it has a special importance compared to others.
It is easy to make binary machines
On the other hand, the most important reason why the binary system is so relevant is that it is very easy to design machines or situations where we can implement a binary system.
For that, we only need “something”, whatever it is, to be able to change state. This state can be almost anything:
- Pen with cap on or off
- Valve open or closed
- Light bulb on or off
- Transistor polarized or not
- Magnetic sector with magnetic field up or down
As long as you can have one of those things, you can set up a storage system for any number in binary. In fact, we have used several of those systems to make mechanical calculators in the past *(currently our computers operate with transistors, magnetic sectors, and things like that 😉):
It is often said that “binary is the language of machines.” The phrase is understood, but I don’t especially like it. It gives an undeserved romanticism, it feels a bit cloying to me (besides, it’s not entirely true…).
What is true is that it is very easy to build binary machines. Or at least, it is much easier than building other types of machines. That’s why the binary system is so widely used.
Relation to digital systems
There is another secondary reason related to the previous one, for which the binary system is used a lot. It is because it fits very well with the concept of digital signals (in fact, it’s not that it fits, it’s that it is the same directly).
I am not going to delve into the digital vs analog concept. But digital systems have advantages over analog ones in terms of noise immunity and state degradation. What a bore! Well, it is what it is… if we had done gardening, we would be talking about daisies 🌻
Suppose you store a number as an electric voltage between 0 and 5V in some type of cell. If you consider that the cell only has two values, 0
and 1
, the cell has to lose 2.5V until its value degrades.
However, if you considered that from 0 to 5V there are 10 values, just losing 0.5V has already corrupted / degraded / permanently lost the original value. That’s why you are less immune to degradation and signal noise.
However, digital systems, which operate in binary, also have disadvantages. The main one is that, as we said, the numbers are very very long. That means you need many cells to store a number. A lot of speed to work with them. A lot of speed to transmit them.
But, since computers are very fast, in the end, the advantages generally outweigh other alternatives.