Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/14448
Title: Μεταγλώττιση Αυτομεταβαλλόμενου Κώδικα Υψηλού Επιπέδου
Authors: Ορέστης Αλεβίζος
Παπασπύρου Νικόλαος
Keywords: αυτομεταβαλλόμενος κώδικας υψηλού επιπέδου
μεταγλωττιστές
κατασκευή και ανάλυση δυναμικού κώδικα.
Issue Date: 31-Oct-2005
Abstract: Το αντικείμενο της εργασίας αυτής ήταν η σχεδίαση και η υλοποίηση μιας γλώσσας προγραμματισμού υψηλού επιπέδου που ενσωματώνει χαρακτηριστικά αυτομεταβαλλόμενου κώδικα διατηρώντας το επίπεδο ασφάλειας τύπων μιας κλασσικής γλώσσας προγραμματισμού. Η υλοποίηση έγινε με τη μορφή μεταγλωττιστή για αυτή τη γλώσσα.Συγκεκριμένα σχεδιάσθηκε η πειραματική γλώσσα SMEC η οποία βασίζεται σε υποσύνολο της ANSI C και ακολουθεί το συντακτικό της γλώσσας C αλλά παραλλήλως έχει δυνατότητες κατασκευής, ανάλυσης και εκτέλεσης κώδικα στο χρόνο εκτέλεσης. Ο παραπάνω κώδικας, που ονομάζουμε δυναμικό κώδικα, δημιουργείται με συντακτικούς όρους υψηλού επιπέδου και ελέγχεται σημασιολογικά κατά τη μεταγλώττιση του προγράμματος με τη βοήθεια ενός ασφαλούς συστήματος τύπων. Έτσι, παρέχεται το ίδιο επίπεδο ασφάλειας με τις κλασσικές γλώσσες υψηλού επιπέδου (συγκεκριμένα με τη γλώσσα C) χωρίς κόστος στο χρόνο εκτέλεσης.Υλοποιήθηκε ένας μεταγλωττιστής για τη γλώσσα SMEC που υλοποιεί τα παραπάνω. Οι δυναμικές επεκτάσεις της γλώσσας υλοποιήθηκαν έτσι ώστε να έχουν όσο το δυνατόν μικρότερο κόστος σε χρόνο και πράγματι επετεύχθησαν μικρά κόστη. Ο μεταγλωττιστής κατά τα άλλα έγινε προσπάθεια να κατασκευαστεί όσο το δυνατόν απλούστερος.Οι τεχνικές που χρησιμοποιήθηκαν για την εισαγωγή και υλοποίηση των δυναμικών επεκτάσεων στη γλώσσα SMEC είναι αρκετά γενικές ώστε να μπορούν να χρησιμοποιηθούν για τον εμπλουτισμό των σημερινών γλωσσών προγραμματισμού με παρόμοια στοιχεία.
URI: http://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/14448
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File SizeFormat 
DT2005-0236.pdf1.14 MBAdobe PDFView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.