Il funzionamento della Macchina di Turing si basa su pochi concetti.
( S1, x ) > ( S2, y, a ) dove S1 e S2 sono stati,
x e y sono
lettere, e a può valere
s (come sinistra), d (come
destra) o - (per indicare nessun
movimento); il significato di questa mossa è il
seguente: "Se la macchina è nello stato S1 e la testina legge la lettera x, si passi nello stato S2, si scriva la lettera y al posto di x e si
muova il nastro di una casella nella direzione indicata da
a".
Una volta avviata, la macchina continua l'esecuzione del programma fintanto che esiste una mossa che riporta come primo elemento lo stato attuale della macchina e come secondo la lettera letta dalla testina. Se non c'è una mossa di questo tipo, la macchina si ferma. Valgono inoltre le seguenti regole:
S1 e S2) possono
essere composti solo dai caratteri
ABCDEFGHIJKLMNOPQRSTUVXYWZ0123456789
x e y) possono
essere solo ABCDEFGHIJKLMNOPQRSTUVXYWZ. La
cella vuota si indica con il simbolo *a) sono uno dei caratteri
d, s, - indicanti
rispettivamente uno spostamento del nastro di una casella
verso destra, verso sinistra e nessun movimento. Per esempio: l'istruzione ( 0,* ) > ( 1,C,s )
significa:"Se la macchina è nello stato
0 e la testina legge una casella vuota, si passi
nello stato 1, si scriva la lettera
C e si muova il nastro di una casella verso
sinistra".