Die Finite State Machine (FSM ) ist ein wichtiger Abstraktion , auf dem der Betrieb von digitalen Computern beruht. Ein FSM besteht aus einem Satz von Zuständen , nur von denen einer "besetzt" zu einer Zeit , und ein Satz von Regeln bestimmen , welcher Zustand eingenommen wird als nächstes auf der Basis werden derzeit belegt und eine Eingabe . In einer deterministischen FSM , jeder Staat führt nur zu einem anderen Staat (oder sich selbst ) für jede mögliche Eingabe . Sie sind leicht zu ziehen und zu analysieren, auf Papier mit Kreisen und Pfeilen . Things You
Pencil Druckpapier
brauchen anzeigen Weitere Anweisungen
1
Zeichne einen Kreis etwa 1 cm über auf dem Papier , um die FSM Ausgangszustand darstellen . Zeigen, dass es der Ausgangspunkt Zustand ist , indem Sie einen Pfeil über einen Zoll lang auf sie zeigen . Schreiben Sie einen eindeutigen Namen für den Staat innerhalb des Kreises , eine gemeinsame Regelung ist es, jeder Staat Etikett mit "S" und ein Index (zB "S0 , S1, S2 " und so weiter ) , sondern nutzen mehr beschreibende Namen für Ihre Zustände , wenn es macht die FSM leichter zu verstehen.
2
Draw noch ein Kreis um einen zweiten Zustand repräsentieren . Schreiben Sie eine Bezeichnung für den zweiten Zustand innerhalb seines Kreises. Jeder Staat muss eine "Antwort" für jede mögliche Eingabe könnte es empfangen definiert. Ziehen Sie so viele Pfeile , die aus dem Ausgangszustand , wie es möglich Eingänge , Etikettieren jede Pfeil mit dem Eingang entspricht sie sind . Jeder Pfeil muss führen zurück in den Ausgangszustand oder in den zweiten Zustand . Als ein Beispiel vorstellen, dass die Maschine , die Zugang zu einem Korb von Bananen , Äpfel und Orangen , die sie durch ein Stück zu einer Zeit holen , bis der Korb ist leer wird . Einen Pfeil mit dem Eingang " Banane " aus dem Ausgangszustand in den zweiten Zustand bezeichnet. Zeichnen Sie zwei weitere Pfeile , entsprechend "Apfel" und "orange ", die aus dem Ausgangszustand , sondern eine Schleife zurück zu ihm. Wenn zwei oder mehr Pfeile an der gleichen Stelle und am Ende in der gleichen Ort wie diesem zu starten, kombinieren Sie sie , um die Zeichnung weniger überladen ; Etikett auf den einfachen Pfeil mit allen Eingängen es entspricht
3 .
Unentschieden mehr Staaten und geben ihre Pfeile , bis Ihre Maschine einen Zustand, in dem sie die ein-oder Reihenfolge der Eingänge es entworfen, um zu identifizieren angetroffen hat erreicht hat. Für das laufende Beispiel zeichnen einen dritten Zustand und beschriften Sie sie . Zeichnen Sie eine " Banane " Pfeil , die aus dem zweiten Zustand in den dritten , und ein " Apfel /orange " Pfeil , die aus dem zweiten Zustand in sich selbst zurück . Zeichnen Sie einen einzigen Pfeil aus dem dritten Zustand führt zurück zu sich selbst, mit allen drei Arten von Obst beschriftet.
4
Unentschieden einen geringfügig kleineren konzentrischen Kreis in den dritten Zustand , um anzuzeigen, dass es eine " Annahme "-Zustand ist . Ihre FSM abgeschlossen ist, aber was bedeutet es? Simulieren , was für ein paar Beispiel Obstkörbe Sie machen passieren , und Sie werden schnell erkennen, dass dies FSM Körbe , die nicht über 2 Bananen ( ein Korb ist "abgelehnt" , wenn die Frucht auslaufen abzuweisen, wenn das isn akzeptierenden Zustand 't besetzt ) . Deterministische FSMs können weit komplexere Funktionen als diese haben, mit mehreren Staaten zu akzeptieren und komplexe mögliche Wege .