You might be wondering how our computers get these ones and zeros. It's a great question. Imagine we have a light bulb and a switch that turns the state of the light on or off. If we turn the light on, we can denote that state is one. If the light bulb is off, we can represent the state is zero. Now imagine eight light bulbs and switches, that represents eight bits with a state of zero or one. Let's backtrack to the punched cards that were used in Jacquard's loom. Remember that the loom used cards with holes in them. When the loom would reach a hole it would hooked to thread underneath, meaning that the loom was on. If there wasn't a hole, it would not hook the thread, so it was off. This is a foundational binary concept. By utilizing the two states of on or off, Jacquard was able to weave intricate patterns of the fabric with his looms. Then the industry started refining the punch cards a little more. If there was a hole, the computer would read one. If there wasn't a hole, it would read zero. Then, by just translating the combination of zeros and ones, our computer could calculate any possible amount of numbers. Binary in today's computer isn't done by reading holes. It uses electricity via transistors allowing electrical signals to pass through. There's an electric voltage, we would denote it as one. If there isn't, we would denote it by zero. For just having transistors isn't enough for our computer to be able to do complex tasks. Imagine if you had two light switches on opposite ends of a room, each controlling a light in the room. What if when you went to turn on the light with one switch, the other switch wouldn't turn off? That would be a very poorly designed loom. Both switches should either turn the light on or off depending on the state of the light. Fortunately, we have something known as logic gates. Logic gates allow our transistors to do more complex tasks, like decide where to send electrical signals depending on logical conditions. There are lots of different types of logic gates, but we won't discuss them in detail here. If you're curious about the role that transistors and logic gates play in modern circuitry, you can read more about it in the supplementary reading. Now we know how our computer gets its ones and zeros to calculate into meaningful instructions. Later in this course, we'll be able to talk about how we're able to turn human-readable instructions into zeros and ones that are computer understands through a compilers. That's one of the very basic building blocks of programming that's led to the creation of our favorite social media sites, video games, and just about everything else. And I'm super excited to teach you how to count in binary, that's up next.