Turing machine (nonfiction): Difference between revisions

From Gnomon Chronicles
Jump to navigation Jump to search
Line 3: Line 3:
== Description ==
== Description ==


Despite its simplicity, a Turing machine can be adapted to simulate the logic of any computer algorithm.
Despite its simplicity, a Turing machine can be adapted to simulate the [[logic (nonfiction)]] of any computer algorithm.


At a very high level, the machine consists of a memory tape divided into cells.
At a very high level, the machine consists of a memory tape divided into cells.
Line 9: Line 9:
A "head" (e.g. a pencil/eraser) traverses the memory one cell at a time, writing or erasing data (e.g. numerical digits) based on user-specified rules.
A "head" (e.g. a pencil/eraser) traverses the memory one cell at a time, writing or erasing data (e.g. numerical digits) based on user-specified rules.


The "machine" was invented in 1936 by [[Alan Turing]] who called it an "a-machine" (automatic machine).
The "machine" was invented in 1936 by [[Alan Turing (nonfiction)]] who called it an "a-machine" (automatic machine).


The Turing machine is not intended as practical computing technology, but rather as a hypothetical device representing a computing machine.
The Turing machine is not intended as practical computing technology, but rather as a hypothetical device representing a computing machine.
Line 15: Line 15:
Turing machines help computer scientists understand the limits of mechanical computation.
Turing machines help computer scientists understand the limits of mechanical computation.


[[Turing completeness]] is the ability for a system of instructions to simulate a Turing machine.
[[Turing completeness (nonfiction)]] is the ability for a system of instructions to simulate a Turing machine.


== Programming languages ==
== Programming languages ==

Revision as of 10:14, 13 December 2015

A Turing machine is a hypothetical device that manipulates symbols on a strip of tape according to a table of rules.

Description

Despite its simplicity, a Turing machine can be adapted to simulate the logic (nonfiction) of any computer algorithm.

At a very high level, the machine consists of a memory tape divided into cells.

A "head" (e.g. a pencil/eraser) traverses the memory one cell at a time, writing or erasing data (e.g. numerical digits) based on user-specified rules.

The "machine" was invented in 1936 by Alan Turing (nonfiction) who called it an "a-machine" (automatic machine).

The Turing machine is not intended as practical computing technology, but rather as a hypothetical device representing a computing machine.

Turing machines help computer scientists understand the limits of mechanical computation.

Turing completeness (nonfiction) is the ability for a system of instructions to simulate a Turing machine.

Programming languages

A programming language that is Turing complete is theoretically capable of expressing all tasks accomplishable by computers.

Nearly all non-markup programming languages are Turing complete.

See also

External links