Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Karlene Stoffer Geändert vor über 9 Jahren
1
Softwareengineering Endliche Automaten
Prof. Dr.-Ing. Axel Benz, Berlin School of Economics and Law se_9_endliche_automaten.ppt
2
Was sind endliche Automaten?
werden u.a. gebraucht um Muster in Zeichenketten zu erkennen. Heißen auch: Statusmaschine Finite State Machine FSM EA se_9_endliche_automaten.ppt
3
Welche Zeichenketten können erkannnt werden?
Intuitiv: Zeichenketten, für deren Erkennung man nur ein begrenztes Gedächtnis braucht. Positivbeispiel: Eine Zeichenkette, die zweimal den String "ABBA" enthält. Negativbeispiel: Eine Zeichenkette mit Klammern und gefordert ist korrekte Klammerung (genau so viele Klammern gehen zu wie aufgehen), kann nicht mit einem endlichen Automaten erkannt werden. Präzise: Zeichenketten, die mit regulären Grammatiken erzeugt werden. Reguläre Grammatiken sind mathematisch definiert, siehe se_9_endliche_automaten.ppt
4
Wie sieht ein endlicher Automat aus?
Ein endlicher Automat kann durch einen Graphen dargestellt werden. Ausdrucksweise: Knoten des Graphen heißen im endlichen Automaten "Zustände", Kanten des Graphen heißen "Transitionen". Ein Zustand ist der Startzustand, ein oder mehrere Zustände sind "Endzustände", jeder Kante ist ein (zu erkennendes) Zeichen zugeordnet. A B B A * Start- zustand S 1 2 3 4 * * * * A * * * End zustand B B A 5 6 * A 7 8 A se_9_endliche_automaten.ppt
5
Ablauf eines endlichen Automaten
Zeichenkette wird Zeichen für Zeichen gelesen. Ich beginne im Startzustand Wenn ich ein Zeichen gelesen haben, folge ich der Transition, der dieses Zeichen zugeordnet ist. Wenn ich nach einlesen der Zeichenkette in einem Endzustand bin, dann wurde das Muster erkannt, sonst nicht. Beispiel vorherige Seite: Erkennt Zeichenketten, die zweimal "ABBA" enthalten. se_9_endliche_automaten.ppt
6
Implementierung: Hauptprogramm, Aufbau des Automaten
se_9_endliche_automaten.ppt
7
Implementierung: Hauptprogramm, Aufbau des Automaten und Start
se_9_endliche_automaten.ppt
8
Implementierung: Speicherung der Transitionen in den Zuständen
se_9_endliche_automaten.ppt
9
Implementierung: Einlesen der Zeichen
se_9_endliche_automaten.ppt
10
Implementierung: Zustände
se_9_endliche_automaten.ppt
11
Implementierung: Transitionen
se_9_endliche_automaten.ppt
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.