A Turing machine, at its simplest, consists of read/write head with a paper "tape" of unlimited length that passes through it. That tape acts as the machine's data storage, just like your computer's hard drive. The head contains a sort of indicator that can be set to a particular position, or "state," which can change based on how you program it. The tape is divided into squares, and each square is either blank or bears one symbol: 0 or 1. For each square it lands on, the read/write head can do six things:

- Read the symbol.
- Write a new symbol, or edit the existing symbol
- Move the tape left by one square.
- Move the tape right by one square.
- Change state.
- Stop.

You can feed the read/write head instructions on what to do when it encounters a certain symbol. For example, if you want to turn every 0 into a 1 and every 1 to a 0, you could tell it that every time it encounters a 0, it writes a 1, then moves the tape to the right; and every time it encounters a 1, it writes a 0, then moves the tape to the right. This is what makes it a finite state machine: a machine that changes its state depending on the input (0, for example) in such a way that its next state depends on the current state and the input (it writes a 1 and moves the tape to the right).

A Turing machine's unlimited tape length is important because Turing wanted to show that even though his machines was unfettered by constraints on time and working memory, there were still tasks that they couldn't perform. For example, no person could ever write out every decimal place of pi because it's infinite. But a Turing machine can, so by definition, pi is Turing-computable. But there are plenty of numbers a Turing machine can't compute—any real number that's just a sequence of seemingly random digits that goes on for infinity counts as non-computable. In fact, non-computable numbers vastly exceed computable numbers. That's the brilliance of Alan Turing's hypothetical device. If something can be computed, it can be computed on a Turing machine.