Μεταγλωττιστές. Ενότητα 5: Λεκτική ανάλυση (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Σχετικά έγγραφα
Μεταγλωττιστές. Ενότητα 4: Τυπικές γλώσσες (Μέρος 3 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Μεταγλωττιστές. Ενότητα 6: Λεκτική ανάλυση (Μέρος 2 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μεταγλωττιστές. Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μεταγλωττιστές. Ενότητα 3: Τυπικές γλώσσες (Μέρος 2 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μεταγλωττιστές Ενότητα 1: Εισαγωγή

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

ΜΑΘΗΜΑ: Μεταγλωττιστές

Μεταγλωττιστές. Ενότητα 7: Συντακτική ανάλυση (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 8 : Αυτόματα NFA - DFA. Αλέξανδρος Τζάλλας

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Μεταγλωττιστές. Ενότητα 8: Συντακτική ανάλυση (Μέρος 2 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

2.3.9 Ελαχιστοποίηση προσδιοριστικού πεπερασµένου αυτόµατου

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Οικονομικά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 11 : Γραμματικές χωρίς συμφραζόμενα. Αλέξανδρος Τζάλλας

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Μαθηματικά. Ενότητα 7: Μη Πεπερασμένα Όρια. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Βάσεις Δεδομένων. Ενότητα 5: ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 9 : Κανονικές Εκφράσεις. Αλέξανδρος Τζάλλας

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Μαθηματικά. Ενότητα 3: Εξισώσεις και Ανισώσεις 1 ου βαθμού. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 1 : Σύνολα & Σχέσεις (1/2) Αλέξανδρος Τζάλλας

Ποσοτικές Μέθοδοι στη Διοίκηση Επιχειρήσεων ΙΙ Σύνολο- Περιεχόμενο Μαθήματος

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Οργανωσιακή Συμπεριφορά Ενότητα 1: Η έννοια της οργάνωσης και διοίκησης

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Συστήματα Αναμονής. Ενότητα 3: Στοχαστικές Ανελίξεις. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 4: Αλυσίδες Markov. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Περιεχόμενα Τι περιγράφει ένα ΣΔ ΣΔ και παραγωγές Θεωρία Υπολογισμού Ενότητα 15: Συντακτικά Δέντρα Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ. Π.

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Διοίκηση Εξωτερικής Εμπορικής Δραστηριότητας

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 10 : Κατασκευή ΝΠΑ. Αλέξανδρος Τζάλλας

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 2: Μοντελο Συσχετίσεων Οντοτήτων, Μελέτη Περίπτωσης: Η βάση δεδομένων των CD

Μαθηματικά. Ενότητα 6: Ασκήσεις Ορίων Συνάρτησης. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Περιεχόμενα Ορισμός και λειτουργία των μηχανών Turing Θεωρία Υπολογισμού Ενότητα 20: Μηχανές Turing: Σύνθεση και Υπολογισμοί Επ. Καθ. Π. Κατσαρός Τμήμ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

Περιβαλλοντική Χημεία

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Θερμοδυναμική - Εργαστήριο

Μοντελοποίηση Λογικών Κυκλωμάτων

Θεωρία Υπολογισμού. Ενότητα 7 : Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις. Αλέξανδρος Τζάλλας

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

ΔΙΔΑΣΚΩΝ: Δρ. Στυλιανός Τσίτσος

ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ. ΕΝΟΤΗΤΑ: Γραμμικές Συναρτήσεις Διάκρισης. ΔΙΔΑΣΚΟΝΤΕΣ: Βλάμος Π. Αυλωνίτης Μ. ΙΟΝΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Εισαγωγή στους Αλγορίθμους

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

Υπολογιστικά & Διακριτά Μαθηματικά

Λογιστική Κόστους Ενότητα 8: Κοστολογική διάρθρωση Κύρια / Βοηθητικά Κέντρα Κόστους.

Αντικειμενοστρεφής Προγραμματισμός Ενότητα 5: Κληρονομικότητα. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Ειδικά Θέματα Προγραμματισμού

Συστήματα Αναμονής. Ενότητα 1: Εισαγωγή. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Μαθηματικά. Ενότητα 9: Όριο Συνάρτησης στο Διηνεκές. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Μαθηματικά. Ενότητα 2: Δεκαδικοί αριθμοί, κλάσματα, δυνάμεις, ρίζες και ποσοστά. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

ΜΑΘΗΜΑ: Ηλεκτρονικά Ισχύος

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Υπολογιστικά & Διακριτά Μαθηματικά

Εισαγωγή στους Αλγορίθμους

ΜΑΘΗΜΑ: ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ

Εισαγωγή στους Αλγορίθμους

Σχεδίαση Δικτύων Υπολογιστών

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Συστήματα Αναμονής. Ενότητα 7: Ουρά Μ/Μ/1. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 9: Ανέλιξη Γέννησης - Θανάτου. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Συστήματα Αναμονής. Ενότητα 2: Τυχαίες Μεταβλητές. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

ΣΤΑΤΙΣΤΙΚΗ ΑΝΑΛΥΣΗ ΜΕ ΧΡΗΣΗ Η/Υ

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Συστήματα Αναμονής. Ενότητα 5: Ανέλιξη Poisson. Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ

ΗΛΕΚΤΡΟΤΕΧΝΙΑ-ΗΛΕΚΤΡΟΝΙΚΗ ΕΡΓΑΣΤΗΡΙΟ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Υπολογιστικά & Διακριτά Μαθηματικά

Συστήματα Αυτομάτου Ελέγχου 1 Ενότητα # 5: Χρήση μετασχηματισμού Laplace για επίλυση ηλεκτρικών κυκλωμάτων Μέθοδοι εντάσεων βρόχων και τάσεων κόμβων

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Transcript:

Μεταγλωττιστές Ενότητα 5: Λεκτική ανάλυση (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα του ΤΕΙ Δυτικής Μακεδονίας και της Ανώτατης Εκκλησιαστικής Ακαδημίας Θεσσαλονίκης» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

Λεκτική ανάλυση (Μέρος 1 ο )

Σκοποί ενότητας Σκοπός της ενότητας είναι η περιγραφή της λεκτικής ανάλυσης. 5

Περιεχόμενα ενότητας Λεξική ανάλυση κι αυτόματα. Σύνοψη. 6

(1/40) Κατασκευή ενός λεξικού αναλυτή. Δήλωση tokens ως ΚΕ. Κατασκευή Μη ντετερμινιστικού πεπερασμένου αυτόματου (ΜΠΑ) για κάθε ΚΕ. Ανάπτυξη Thompson. Ανάπτυξη Glushkov. 7

(2/40) Κατασκευή ενός λεξικού αναλυτή (Συνέχεια). Μετατροπή ΜΠΑ σε Ντετερμινιστικό πεπερασμένο αυτόματο (ΝΠΑ). Ανάπτυξη Υποσυνόλων. Ελαχιστοποίηση ΜΠΑ. Αλγόριθμος Hopcroft. Υλοποίηση Εφαρμογής. 8

(3/40) Σχήμα 1. Λεξική ανάλυση κι αυτόματα (1), (πηγή: διδάσκων, 2014). 9

(4/40) Μετατροπή κανονικών εκφράσεων σε μη ντετερμινιστικά αυτόματα. Ανάπτυξη thompson. Γίνεται συντακτική ανάλυση της κανονικής έκφρασης. 10

(5/40) Κατασκευάζονται τα αυτόματα. Αντιστοιχούν σε κάθε μία από τις στοιχειώδεις κανονικές εκφράσεις που προκύπτουν. Σχήμα 2. Λεξική ανάλυση κι αυτόματα (2), (πηγή: διδάσκων, 2014). 11

(6/40) Αν θεωρήσουμε M(r) και M(s) τα αυτόματα των εκφράσεων r και s. Τότε το αυτόματο M(r s) είναι το: Σχήμα 3. Θεώρηση M(r) και M(s) τα αυτόματα των εκφράσεων r και s, (πηγή: διδάσκων, 2014). 12

(7/40) Μετατροπή κανονικών εκφράσεων σε μη προσδιοριστικά αυτόματα. Ανάπτυξη thompson. Για την κανονική έκφραση rs παράγεται το M(r s). Σχήμα 4. Κανονική έκφραση rs όπου παράγεται το αυτόματο M(rs), (πηγή: διδάσκων, 2014). 13

(8/40) Για την κανονική έκφραση r* παράγεται το αυτόματο Μ(r*): Σχήμα 5. Κανονική έκφραση r* όπου παράγεται το αυτόματο M(r*), (πηγή: διδάσκων, 2014). Για την κανονική έκφραση (r) χρησιμοποιείται το αυτόματο Μ(r). 14

(9/40) όνομα = {γράμμα}({γράμμα} {ψηφίο})* Το δένδρο που προκύπτει από τη συντακτική ανάλυση της έκφρασης είναι το: Σχήμα 6. Δέντρο που προκύπτει από τη συντακτική ανάλυση της έκφρασης, (πηγή: διδάσκων, 2014). 15

Γράμμα. (10/40) Σχήμα 7. Γράμμα, (πηγή: διδάσκων, 2014). 16

Ψηφίο. (11/40) Σχήμα 8. Ψηφίο, (πηγή: διδάσκων, 2014). 17

({γράμμα} {ψηφίο}). (12/40) Σχήμα 9. Γράμμα ψηφίο, (πηγή: διδάσκων, 2014). 18

(13/40) ({γράμμα} {ψηφίο})*. Σχήμα 10. Γράμμα ψηφίο*, (πηγή: διδάσκων, 2014). 19

(14/40) {γράμμα}({γράμμα} {ψηφίο})*. Σχήμα 11. Γράμμα γράμμα- ψηφίο*, (πηγή: διδάσκων, 2014). 20

(15/40) Μετατροπή ΜΠΑ σε ΝΠΑ. Ανάπτυξη υποσυνόλων. Οι καταστάσεις του ντετερμινιστικού αυτόματου. Που προκύπτει ως αποτέλεσμα. Είναι υποσύνολα των καταστάσεων του μη ντετερμινιστικού αυτόματου. 21

(16/40) Δύο καταστάσεις p και q του αρχικού μη ντετερμινιστικού αυτόματου. Ανήκουν στο ίδιο υποσύνολο. Αν για κάποιο χαρακτήρα-πρότυπο οι μεταβάσεις του μη ντετερμινιστικού αυτόματου οδηγούν. Είτε στην p. Είτε στην q. 22

(17/40) Αν υπάρχει μία μετάβαση από την κατάσταση p στην q. Μέσω του χαρακτήρα - πρότυπο a. Και μία μετάβαση από την q στην u. Τότε οι καταστάσεις q και u ανήκουν στο ίδιο υποσύνολο καταστάσεων. 23

(18/40) Ανάπτυξη υποσυνόλων. Συμβολίζουμε με reach(f, ci). Το σύνολο όλων των καταστάσεων που είναι προσβάσιμες από τις καταστάσεις του F μέσω μιας μετάβασης με επιγραφή ci. Συμβολίζουμε με εsucc(f). Το σύνολο των καταστάσεων, που είναι προσβάσιμες από το F μετά από πεπερασμένο αριθμό μεταβάσεων-ε. 24

(19/40) Ανάπτυξη υποσυνόλων (Συνέχεια). Θεωρούμε ως νέα κατάσταση του ΝΠΑ το σύνολο εsucc({«αρχή»}). Για την κατάσταση αυτή και για κάθε νέο υποσύνολο F S. Το σύνολο των προσβάσιμων καταστάσεων, μέσω μιας μετάβασης με επιγραφή a, δίνεται ως εsucc(reach(f,a)). Ο αλγόριθμος συνεχίζει για όλους τους χαρακτήρες a Σ. 25

(20/40) Ανάπτυξη υποσυνόλων (Συνέχεια). Μία νέα κατάσταση είναι κατάληξη. Αν το υποσύνολο καταστάσεων στο οποίο αντιστοιχεί. Περιέχει μία κατάληξη του ΜΠΑ. 26

(21/40) Ανάπτυξη υποσυνόλων Παράδειγμα. Σχήμα 12. Ανάπτυξη υποσυνόλων Παράδειγμα 1, (πηγή: διδάσκων, 2014). 27

(22/40) Ανάπτυξη υποσυνόλων Παράδειγμα. Σχήμα 13. Ανάπτυξη υποσυνόλων Παράδειγμα 2, (πηγή: διδάσκων, 2014). 28

(23/40) Ανάπτυξη υποσυνόλων Αλγόριθμος. Είσοδος. Ένα μη προσδιοριστικό πεπερασμένο αυτόματο Μ. Έξοδος. Ένα προσδιοριστικό πεπερασμένο αυτόματο D με γλώσσα L(M). Περιγραφή. Ο αλγόριθμος κατασκευάζει τον πίνακα μεταβάσεων Τ, του D. 29

Περιγραφή (Συνέχεια). (24/40) Οι καταστάσεις και οι μεταβάσεις, που προστίθενται στο αυτόματο D υπολογίζονται ως εξής: 30

(25/40) Περιγραφή (Συνέχεια). Μία κατάσταση του D γίνεται κατάληξη. Αν το αντίστοιχο σύνολο των καταστάσεων περιέχει τουλάχιστο μία κατάληξη του Μ. 31

(26/40) Ελαχιστοποίηση προσδιοριστικών πεπερασμένων αυτομάτων. Τα προσδιοριστικά αυτόματα. Που προκύπτουν ως αποτέλεσμα μιας διαδικασίας ανάπτυξης υποσυνόλων. Χαρακτηρίζονται συχνά από μεγάλους πίνακες μεταβάσεων. Οφείλεται στην αύξηση του αριθμού των καταλήξεων. 32

(27/40) Έχει αποδειχθεί ότι για δοθέν προσδιοριστικό αυτόματο. Υπάρχει ένα μοναδικό ισοδύναμο αυτόματο. Με τον ελάχιστο αριθμό καταστάσεων. 33

(28/40) Αλγόριθμος των Hopcroft & Ullman. Παράγει το ελάχιστο αυτόματο. Διαιρώντας τις καταστάσεις του αρχικού σε σύνολα. Ώστε όλες οι καταστάσεις του ίδιου συνόλου να αναγνωρίζουν τις ίδιες συμβολοσειρές. 34

(29/40) Ελαχιστοποίηση ΝΠΑ. Λέμε ότι σε ένα αυτόματο. Μία συμβολοσειρά w διακρίνει την κατάσταση «s» από την κατάσταση «t». Αν ξεκινώντας από την «s» και διοχετεύοντας την w. Οδηγούμαστε σε κατάληξη, ενώ δε συμβαίνει το ίδιο με την κατάσταση «t». 35

Η συμβολοσειρά ε. (30/40) Διακρίνει τις καταλήξεις από τις υπόλοιπες καταστάσεις του αυτόματου. Αρχικά διακρίνουμε το χώρο των καταστάσεων. Σε καταλήξεις και μη καταλήξεις. 36

(31/40) Σταδιακά συγκροτούνται σύνολα καταστάσεων. Ώστε για κάθε ζεύγος καταστάσεων από διαφορετικά σύνολα. Αυτές να έχουν διακριθεί από κάθε συμβολοσειρά εισόδου. Ενώ για κάθε ζεύγος καταστάσεων του ίδιου συνόλου να μην έχει συμβεί ακόμη κάτι τέτοιο. 37

(32/40) (+ -)? {ψηφίο} {ψηφίο}* Σχήμα 14. Λεξική ανάλυση και αυτόματα, (πηγή: διδάσκων, 2014). 38

(33/40) Πρέπει να συμπεριλάβουμε και την κατάσταση «λάθος». Σχήμα 15. Κατάσταση «λάθος», (πηγή: διδάσκων, 2014). 39

(34/40) 40

(35/40) Σχήμα 16. Συνέχιση συμπλήρωσης πίνακα (1), (πηγή: διδάσκων, 2014). Η διαδικασία συμπλήρωσης του πίνακα συνεχίζεται. Μέχρι να μην είναι δυνατή η εύρεση νέου ζεύγους καταστάσεων. Που διακρίνονται από κάποιο χαρακτήρα εισόδου. 41

(36/40) Σχήμα 17. Συνέχιση συμπλήρωσης πίνακα (2), (πηγή: διδάσκων, 2014). Τελικά μόνο οι καταστάσεις 1 και 2 ανήκουν στην ίδια κλάση ισοδυναμίας. Μετονομάζουμε την κατάσταση 2 σε 1 και παίρνουμε το ελάχιστο αυτόματο του σχήματος. 42

(37/40) Σχήμα 18. Λεξική ανάλυση κι αυτόματα, (πηγή: διδάσκων, 2014). 43

(38/40) Παράδειγμα ελαχιστοποίησης προσδιοριστικών πεπερασμένων αυτομάτων. Σχήμα 19. Ελαχιστοποίηση προσδιοριστικών πεπερασμένων αυτομάτων, (πηγή: διδάσκων, 2014). 44

(39/40) Οι μεταβάσεις όλων των καταλήξεων οδηγούν σε καταλήξεις. Τόσο για την περίπτωση που ο χαρακτήρας εισόδου είναι γράμμα. Όσο και στην περίπτωση που αυτός είναι ψηφίο. Άρα οι τρεις καταλήξεις δε διακρίνονται από κανένα χαρακτήρα. 45

(40/40) Σχήμα 20. Τελικό σχήμα, (πηγή: διδάσκων, 2014). 46

Σύνοψη (1/2) Ο Λεξικός Αναλυτής μετατρέπει τη συμβολοσειρά εισόδου σε λεκτικές μονάδες. Με βάση τα πρότυπα που τις περιγράφουν. Η περιγραφή των προτύπων επιτυγχάνεται με την βοήθεια κανονικών εκφράσεων. 47

Σύνοψη (2/2) Οι κανονικές εκφράσεις μπορούν να μετατραπούν σε ΜΠΑ. Τα οποία με την σειρά τους μπορούν να μετατραπούν σε ΝΠΑ. Τα τελευταία μπορούν να αναγνωρίσουν πολύ γρήγορα τις λεκτικές μονάδες της εισόδου. Με τη βοήθεια ενός πίνακα μετάβασης. 48

Βιβλιογραφία 1. «Μεταγλωττιστές γλωσσών Προγραμματισμού: Θεωρία και Πράξη», Λάζος, Κ.Ε., Κατσαρός και Π.Θ., Καραΐσκος, Ζ.Κ. (2004), Εκδόσεις Θεσσαλονίκη, [ISBN:960-87723-4-6]. 2. «Μεταγλωττιστές», Παπασπύρου, Ν.Σ. και Σκορδαλάκης, Ε.Σ (2002), Εκδόσεις Συμμετρία, 2002, [ISBN: 978-960-266-135-2]. 49

Τέλος Ενότητας 50