If you want to know what makes a computer work, then this video series is for you. I work through the design of a simple CPU (Central Processing Unit), which is the beating heart of a modern computer. I design and simulate each block of the CPU in an online tool called Logisim. You can download the tool and simulate the CPU on your computer or if you like you can take a copy of my simulation files and load them into the tool and simulate what you have learned in the videos or just listen along to the videos (it's up to you).
First, we download the free design tool called Logism, in which we design and simulate our CPU and take a look around the tool and show you how it works. Then the fun begins. We design and simulate the following blocks:
We then design and simulate the most difficult section of the control unit. This is where it all comes together, and you will get that amazing eureka moment when you can say, I know what a computer is! In this section, we build up the instruction set within the control unit.
We then build up a little assembler which converts our machine code to our assembly language in Microsoft Excel (what's an assembler? Once you get to this point you will know, and you will be home and dry). Finally, we are in a position to load the CPU up without the first assembly language program. An algorithm that multiplies two numbers together (might not sound like much but you can then design your algorithms and simulate them in your CPU).
In the last two videos, we go into a bit of mathematics about what a computer is and what it can and cannot do for you. I introduce the idea of an algorithm and something called a Universal Turing Machine. I answer the question 'Can a computer work out the answer to everything?'
This course follows the CPU design in the book ButHowDoItKnow (The Basic Principles of Computers for Everyone). You do not need to buy the book to follow the course, but I would highly recommend the book. If you want to know how a computer works, then this is the course for you.
You should have a computer.