Computers 101. It’s all magic, right?
You’ve probably heard that deep down inside, computers are just 1s and 0s. Maybe someone told you that when you write a text or make a phone call everything is coded into this magical digital language of ones and zeros and then those ones and zeros are sent along some cable at the speed of electrons (light) and then it’s with decoded on the other end. In a non-literal way, there is some truth in that, but it’s actually not the whole story.
Thinking that the computer’s language is ones and zeroes and leaving it at that, makes computers seem magical… because we can’t envision doing that with ones and zeros. The truth of the matter is that computers actually don’t operate with 1 or 0, but they do operate logically.
Computers Don’t Actually Understand Ones and Zeros.
Computers don’t understand things. It’s important to realize that at their core, they are simple machines that perform very simple operations, very quickly. Despite the meme that computer are all about ones and zeroes, they don’t actually use ones and zeroes at all. Computers can only process two states… ON and OFF*. It’s humans that have labeled these two states one and zero. Understanding this takes the magic of computing away… so if you want to think that computers are magical, read no further.
Logically, Computers are Basically Light Switches
If you reduce a computer down to its most basic elements, a computer essentially is just turning millions of extremely fast switches on and off. Like a standard single-pole light switch, it can exist in two states. ON and OFF. Every operation in a computer can be reduced to a sequence of ON/OFF states.
Any two symbols could represent the two states (ON and OFF) that a computer uses, even emojis.
Boolean logic calls these states TRUE and FALSE. The binary number system uses 1 and 0, but it’s important to realize that at the simplest level, computers turn electricity on and off and it’s humans that use the symbols 1 and 0 to represent these two states. We could use any two symbols to represent binary states, even emojis. They’re just representations of an electrical state inside a piece of silicon. However, 1 and 0 is much easier to type than 👍 and 👎 or 🐶 and 🐱.
Logic Helps Understand Binary?
Understanding how computers work is not essential for learning binary, but it will help you to see why binary is a good fit computers. However, we have to fight some of our biases from working all our lives with the decimal system and break down the meaning of what we are seeing.
Fight Familiarity Bias!
When you see the number 100, what do you think of? Perhaps, you think of a perfect 100% on a test, a speed limit (100 km/h on Canadian highways), 100¢ making up $1, 100cm in a metre. Whatever comes to mind, you probably don’t immediately think of no ones, no tens, and one hundreds. Your brain has internalized those three symbols in that order, 1-0-0 to have a specific meaning… one hundred. If you remember WAY back to elementary school, you probably learned it differently. You probably learned that each position means something. ones, tens, hundreds, thousands, etc. Each position equals ten of the previous position. This may seem overly simplistic, but breaking the number into its basic elements will help you to understand binary.
Position is everything
If you rearranged the symbols from 100 to 010, you would no longer see that number as one hundred. You’d think it was ten. You’d think that it’s weird that someone left a 0 on front and just discard it as insignificant.
And that is the point. Position is the MOST important part of any number system. By understanding that the position of a numeral is more significant than the number itself, it makes it easier to overcome your biases.
So… given that this subject is kind of esoteric and a bit complex, can we really expect a 6-year old to understand binary? YES! Yes we can… and I’ll be writing another article on the approach that I used to teach my 6-year old binary using beeps, boops and chocolate squares. More on that in part 2… Using chocolate to teach kids binary.
* They usually measure < 0.5V as OFF and >0.5V as ON, but I’ll treat this as ON and OFF.