| catweasel hat folgendes geschrieben: |
Häh?... Bei nem IBM Rechner sind die Befehle doch auch schon vorgegeben.. ein PUSH/POP heissen eben PUSH un POP und nich PISH und SEX
|
Das mit dem "vorgegeben" hab ich im Zusammenhang mit Compiler gebraucht.
Und ich finde, dass das kein Compiler ist. Die lexikalische Analyse kann man ja einfach umgehen, weil man theoretisch nur prüfen muss, was in der jeweiligen Box drinsteht. Bei der Syntax kann man auch nicht viel falsch machen, weil ja alles schon vorgegeben ist, also das zuerst der Befehl steht und dann der Parameter.
| catweasel hat folgendes geschrieben: |
Was ist an meinem Programm keine Turingmaschine ?
|
Definition nach Alan Turing
Eine Turingmaschine ist ein 7-Tupel T = ( X, B, Z, q, b, z0, Ze), wobei gilt:
- X ist eine nichtleere, endliche Menge, das Eingabealphabet,
- X Teilmenge/gleich B ist eine nichtleere, endliche Menge, das Bandalphabet,
- Z ist eine nichtleere, endliche Menge, die Zustandsmenge,
- q: (Z/Ze) x B -> B x {L, N, R} x Z ist eine Funktion, die Überführungsfunktion, welche jedem Paar (Zustand,
gelesenes Zeichen) ein Tripel (zu schreibendes Zeichen, Kopfbewegung, Folgezustand) zuordnet,
- b Element B \ X ist das Leerzeichen oder Blank,
- z0 Element Z ist der Anfangszustand
- Ze Teilmenge/gleich ist die Endzustandsmenge
oder für den Durchschnittsbürger:
Eine
TURING-Maschine läßt sich wie folgt beschreiben:
ein beidseitig unbegrenztes Band, das in Felder aufgeteilt ist.
Jedes Feld kann ein Zeichen aus einem endlichen Alphabet oder ein Leerzeichen aufnehmen.
Auf dem Band bewegt sich ein Schreib-Lesekopf, dabei kann genau das Feld unter dem Kopf gelesen oder beschrieben werden; Danach bewegt sich der Kopf maximal um eine Position nach links oder rechts.
Ein Programm gibt die Berechnungsschritte an. Bei der Berechnung kann nur eine endliche Menge von Zuständen angenommen werden.
Frage beantwortet?
MfG
Jack Falworth
Andere zu kritisieren ist mitunter eine Möglichkeit, sich selbst ins bessere Licht zu setzen.