Turing is a model computer. It contains all the parts that of a real computer but simplified a bit so that you can understand what the parts do when it is working.
The current release is version 2.0 which contains significant improvements and new features.
There may be some debate about whether Turing is a computer or a CPU – we leave this decision to you, but it contains all CPU components plus a virtualised memory and I/O unit. This is MUCH simpler than even the simplest real CPU/computer but it contains all the parts that are needed. It also has some parts that are not in a real computer and we will explain these later in this section.
You can see from the diagram above that there are 4 main parts (called units) and a route that connects the units together (this is called a bus). The 4 units are: Control Unit, Arithmetic Unit (inside the Central Processing Unit), Memory Unit and the Input and Output Unit (and the buses connecting them).
Some Key points about Turing:
- All registers and locations are 8 bit and are shown in hexadecimal (H) or binary (B), decimal (D) or Octal (O)
- Turing contains an accumulator and two other general purpose registers (B and C).
- Only the accumulator can carry out arithmetic.
- Turing shows flags depending on the result of an operation in the flag register
- There are 255 memory locations, each of which hold a 8 bit value.
- The memory address register shows which location in the memory block can be accessed
- The program counter contains the address in memory where the next program instruction will be taken from
- Turing has a simulated I/O unit to allow users to write programs which affect the "outside" of the CPU.
- Turing has a traditional stack and opcodes which manipulate this.
- Turing Clock records the time taken for any operation and can be reset manually.