Turing machines are a mathematical abstraction, developed by Alan Turing, that serve as logical models of modern digital computers or “mechanical procedure”. A Turing machine is usually described as consisting of a tape and a read/write head (actually a finite state machine) with an internal state.
The tape serves the functions of both an input stream for the machine and an output, although since there is no outside influence on the tape after the machine has started its work, it is not input device in the sense that, say, a computer mouse is an input device, that may be moved at anytime once a computer has begun operation. The tape divided into squares, each square is occupied by a one, a zero or a blank symbol, some Turing machine variations do without the blank. The tape is possibly infinite in length, and possibly infinite in both directions from the origin. It is important to note that these variation in the tape’s length and allowance of a blank state do not change any results but are mathematical conveniences.
Finite state machines embody the rules or logic of algorithms. Each will have a finite state transition table to tell the machine what to do. A typical rule in this table is “If the machine is in state 1, and input is zero , write one and move left along the tape”. Note the difference between the machine being in state 1, and the current symbol on the tape being one, they are different things, a machine could have more than two (or three) states.
Turing machines are thus a model of all algorithms, and to a limited degree software and whole computer systems, the important difference being that computer systems accept inputs that are not known at the time of the beginning of operation.