We continue with our binary course. We have already seen ways to represent numbers, positional notation and the concept of base, digital numeral systems, and that there are multiple systems to represent the same number.
Among them, we know that the binary system is “special” (if it weren’t, this course would be about gardening and daisies 🌻, and not about binary numbers).
But why is the binary system special? Why is base 2 so important nowadays? 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 off the bat, it’s 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.
Now you might think… “well, I could count with only one symbol”. I can take a symbol, for example 0, and put as many 0s as I need. Done! Base 1.
No, you couldn’t, you cheated. You used empty and 0. That’s 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 as a symbol for me) I cannot make a numeral system.
The binary system is the simplest and the minimum necessary to have a numeral system. Therefore, it is logical that it has a special importance compared to the others.
It’s Easy to Make Binary Machines
On the other hand, the most important reason for the binary system being 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 pointing up or down
As long as you can have one of those things, you can already 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 work 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 particularly like it. It gives it an undeserved romanticism, I find it a bit cloying (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.
Relationship with Digital Systems
There is another secondary reason related to the previous one, why the binary system is used so much. It’s because it fits very well with the concept of digital signals (in fact, it’s not that it fits, it’s the same thing directly).
I won’t 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, that’s the way it is… we should have done gardening and we’d be talking about daisies 🌻
Suppose you store a number as an electrical voltage between 0 and 5V in some kind of cell. If you consider that the cell only has two values, 0 and 1, the cell has to lose 2.5V before its value degrades.
However, if you considered that from 0 to 5V there are 10 values, losing just 0.5V would already have corrupted / degraded / lost forever 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. This 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.
