Skip main navigation

Assembly Language Pros and Cons

These days, Simon Long is a Senior Principal Software Engineer at Raspberry Pi, but in the past he worked in contract research and development and sometimes found himself having to …

The Little Man Computer

This is the Little Man Computer, or LMC. It’s an instructional model of a computer, created around 1965. It models a simple Von Neumann architecture, with all the basic features …

Fetch-Decode-Execute Cycle

Now you are going to look at how the CPU can perform calculations, using a process known as the fetch-decode-execute cycle. Here, you have a representation of a CPU and …

Architecture of a CPU

Building on how logic gates can be used to perform calculations and to store data, you are going to look at how this all fits together to make a computer. …

How does a computer store data?

Before you look at how a computer processor works, you need to look at how a computer can store data. Here, we outline how this works. Above is a diagram …

All the other gates

In this step, you are going to recap some of the logic gates you have already met, and look at all the other gates. You should be familiar by now …

What is a NAND Gate?

In this step, you are going to have a look at how transistors can be combined together to form what are called logic gates, and in particular you will look …

From Switches to Transistors

You should already be familiar with performing calculations using 1s and 0s, and that the state of a switch can be used to represent a 1 or a 0. You …

Why do computers use binary?

Start by thinking about the most simple use case: computers need to store data. If a computer worked in denary, then for each digit, it would need to be able …

Working with Binary

In this step, you are going to look at working with binary. As you are probably aware, a Turing machine is capable of operating using only two symbols – 1 …

The importance of history

When I taught science to 11- to 18-year-old students, I would pepper my lessons with various stories and anecdotes that were relevant to the lesson. For instance, when I was …

Turing Machines Explained

While Babbage and Lovelace can be considered the parents of computers and programming, Alan Turing is often called the father of computer science. During the war effort, Turing worked on …

Babbage and Lovelace and the First Computer

In this step, we’re going to look at two of the earliest pioneers of computer science: Charles Babbage and Ada Lovelace. You’ll learn about their pioneering work in trying to …

Definition of a Computer

In this step, you are going to look at what is meant by the term computer, and try to come up with a definition for what a computer actually is. …