Μεταγλωττιστές
Γεώργιος Δημητρίου
Το μάθημα παρέχει στους φοιτητές τις βασικές γνώσεις στο αντικείμενο των μεταγλωττιστών. Αρχικά σχηματίζει το απαραίτητο θεωρητικό υπόβαθρο με τη μελέτη γραμματικών, γλωσσών, αυτομάτων και μηχανών καταστάσεων, που συνοδεύεται από απαραίτητη επανάληψη ειδικών δομών δεδομένων, όπως δέντρων, γραφημάτων και πινάκων κατακερματισμού, καθώς και κλασικών αλγορίθμων διαπέρασης και κλεισίματος. Με το υπόβαθρο αυτό: Μελετάται η λεκτική ανάλυση ενός αρχικού προγράμματος και ο προγραμματισμός της, τόσο με το χέρι, όσο και αυτόματα με τη βοήθεια του εργαλείου "flex". Στη συνέχεια μελετάται η συντακτική ανάλυση και κατασκευή του συντακτικού δέντρου, τόσο με το χέρι, όπου αυτό είναι εφικτό, όσο και αυτόματα με τη βοήθεια του εργαλείου "bison". Στη συντακτική ανάλυση εξετάζονται οι αλγόριθμοι για γραμματικές LL(1), LR(0), SLR(1), LR(1) και LALR(1). Επίσης μελετάται η σημασιολογική ανάλυση και η χρήση της, όπως για παράδειγμα στον έλεγχο τύπων, με τη βοήθεια κατηγορικών γραμματικών. Στην παραγωγή ενδιάμεσου κώδικα που ακολουθεί δίνεται έμφαση στην απεικόνιση αφηρημένων συντακτικών δέντρων. Στη συνέχεια μελετάται η παραγωγή τελικού κώδικα με τα κύρια προβλήματά της, δηλαδή την επιλογή εντολών και τη δέσμευση καταχωρητών. Τέλος, γίνεται μια εισαγωγή σε βελτιστοποιήσεις κώδικα.
Το μάθημα περιλαμβάνει ασκήσεις, τόσο θεωρητικές όσο και εργαστηριακές, καθώς και εργασία με θέμα την πλήρη κατασκευή μεταγλωττιστή μιας απλής γλώσσας προγραμματισμού.
ΛιγότεραΤο μάθημα παρέχει στους φοιτητές τις βασικές γνώσεις στο αντικείμενο των μεταγλωττιστών. Αρχικά σχηματίζει το απαραίτητο θεωρητικό υπόβαθρο με τη μελέτη γραμματικών, γλωσσών, αυτομάτων και μηχανών καταστάσεων, που συνοδεύεται από απαραίτητη επανάληψη ειδικών δομών δεδομένων, όπως δέντρων, γραφημάτων και πινάκων κατακερματισμού, καθώς και κλασικών αλγορίθμων διαπέρασης και κλεισίματος. Με το υπόβαθρο αυτό: Μελετάται η λεκτική ανάλυση ενός αρχικού προγράμματος και ο προγραμματισμός της, τόσο με το χέρι, όσο και αυτόματα με τη βοήθεια του εργαλείου "flex". Στη συνέχεια μελετάται η συντακτική ανάλυση και κατασκευή του συντακτικού δέντρου, τόσο με το χέρι, όπου αυτό είναι εφικτό, όσο και αυτόματα με τη βοήθεια του εργαλείου "bison". Στη συντακτική ανάλυση εξετάζονται οι αλγόριθμοι για γραμματικές LL(1), LR(0), SLR(1), LR(1) και LALR(1). Επίσης μελετάται η σημασιολογική ανάλυση και η χρήση της, όπως για παράδειγμα στον έλεγχο τύπων, με τη βοήθεια κατηγορικών γραμματικών. Στην παραγωγή ενδιάμ
Το μάθημα παρέχει στους φοιτητές τις βασικές γνώσεις στο αντικείμενο των μεταγλωττιστών. Αρχικά σχηματίζει το απαραίτητο θεωρητικό υπόβαθρο με τη μελέτη γραμματικών, γλωσσών, αυτομάτων και μηχανών καταστάσεων, που συνοδεύεται από απαραίτητη επανάληψη ειδικών δομών δεδομένων, όπως δέντρων, γραφημάτων και πινάκων κατακερματισμού, καθώς και κλασικών αλγορίθμων διαπέρασης και κλεισίματος. Με το υπόβαθρο αυτό: Μελετάται η λεκτική ανάλυση ενός αρχικού προγράμματος και ο προγραμματισμός της, τόσο με το χέρι, όσο και αυτόματα με τη βοήθεια του εργαλείου "flex". Στη συνέχεια μελετάται η συντακτική ανάλυση και κατασκευή του συντακτικού δέντρου, τόσο με το χέρι, όπου αυτό είναι εφικτό, όσο και αυτόματα με τη βοήθεια του εργαλείου "bison". Στη συντακτική ανάλυση εξετάζονται οι αλγόριθμοι για γραμματικές LL(1), LR(0), SLR(1), LR(1) και LALR(1). Επίσης μελετάται η σημασιολογική ανάλυση και η χρήση της, όπως για παράδειγμα στον έλεγχο τύπων, με τη βοήθεια κατηγορικών γραμματικών. Στην παραγωγή ενδιάμ
Κατηγορία: Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών » Προπτυχιακό
Ημερολόγιο
Ανακοινώσεις
- Δευτέρα, 30 Σεπτεμβρίου 2019
- Παρασκευή, 20 Σεπτεμβρίου 2019
- Τρίτη, 10 Σεπτεμβρίου 2019
- Δευτέρα, 24 Ιουνίου 2019
- Πέμπτη, 20 Ιουνίου 2019