ΕΑΠ – ΠΛΗ24 2η ΟΣΣ.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Προγραμματισμός PASCAL
Advertisements

Λογισμικό Συστήματος Κλειώ Σγουροπούλου.
Προγραμματισμός PASCAL
HY100 : ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΟΝΤΕΣ Αντώνιος Σαββίδης, Χρήστος.
Προγραμματισμός PASCAL
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
Δομές Διακλάδωσης.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος ε
Γενική μορφή προγράμματος Pascal
ΕΠΛ Θεωρία και Πρακτική Μεταγλωττιστών5-1 Επίλυσης ασάφειας με εισαγωγή μη-τερματικών Π.χ. stmt = “if”, expr, “then”, stmt | “if”, expr, “then”,
ΘΠ06 - Μεταγλωττιστές Συντακτική Ανάλυση, Bison 1.
Διαφάνειες παρουσίασης Πίνακες (συνέχεια) Αριθμητικοί υπολογισμοί Αναδρομή.
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 12: Παραγωγή Ενδιάμεσου Κώδικα (Σημασιολογικές ρουτίνες μετάφρασης-Μέρος Β) Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής.
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
Διαφάνειες παρουσίασης Ορθότητα (συνέχεια) Τακτικοί τύποι και τύποι υποπεριοχής Πίνακες.
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
ΘΠ06 - Μεταγλωττιστές Ενδιάμεσος Κώδικας – Μεταφραστικά Σχήματα.
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
1 Προγραμματισμός Ι Ενότητα 6 : Υποπρογράμματα III Αλέξανδρος Τζάλλας Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
ΔΙΟΙΚΗΤΙΚΗ ΛΟΓΙΣΤΙΚΗ Γεώργιος Βενιέρης Σάνδρα Κοέν.
Γλώσσες Προγραμματισμού Μεταγλωττιστές Παραγωγή Ενδιάμεσου Κώδικα Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου.
Ενότητα 1 1 Πρότυπο κόστος. Τι είναι: –Πολύ σωστά και πολύ λεπτομερειακά υπολογισμένο προϋπολογιστικό κόστος Τι εκφράζει: –Στόχους που θα πρέπει να επιτευχθούν.
Η καθημερινή ζωή στο Βυζάντιο Εργασία της μαθήτριας: Τζένη Αλουσάι στο μάθημα της Ιστορίας ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΗΤΡΙΑ:κα.Τσαούση.
Γλώσσες Προγραμματισμού Μεταγλωττιστές Σημασιολογική Ανάλυση Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου.
Integrated Water Resources Management (IWRM) Η ολοκληρωμένη διαχείριση των υδάτινων πόρων (ΟΔΥΠ) είναι μια συστηματική διαδικασία για την αειφόρο ανάπτυξη,
1 Προγραμματισμός Ι Ενότητα 7 : Πίνακες I Αλέξανδρος Τζάλλας Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
ΘΕΑΤΡΟΠΑΙΔΑΓΩΓΙΚΟ ΠΡΟΓΡΑΜΜΑ ΣΕ ΣΥΝΕΡΓΑΣΙΑ ΜΕ ΤΟ ΣΥΛΛΟΓΟ ΑΜΕΑ ΑΡΓΟΛΙΔΑΣ.
Διδακτική της Πληροφορικής
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Πολυτεχνική Σχολή: Κοσμητεια –Πεπραγμένα Ι Γ Μπάρτζης
Η Γλώσσα Pascal Εντολή If
Βελτιστοποίηση σε τρίλιζα Καταδίωξη/διαφυγή
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΟΙΚΟΝΟΜΙΚΗ ΔΙΑΧΕΙΡΙΣΗ ΈΡΓΩΝ
ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΠΡΟΫΠΟΛΟΓΙΣΜΟΥΣ
Εφαρμογές Υπολογιστών
Ενότητα 5 : Υποπρογράμματα II Αλέξανδρος Τζάλλας
Ενότητα 1 : Εισαγωγικά Στοιχεία της Pascal Αλέξανδρος Τζάλλας
Ενισχυτική διδασκαλία
Δομές διακλάδωσης, επαναλήψεις, μέθοδοι
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Νικήτας Σγούρος Μεταγλωττιστές Νικήτας Σγούρος
Η Γλώσσα Pascal Υποπρογράμματα

ΠΡΑΚΤΙΚΕΣ ΟΔΗΓΙΕΣ ΣΧΕΔΙΑΣΜΟΥ ΔΟΚΙΜΙΩΝ ΑΞΙΟΛΟΓΗΣΗΣ
Νικήτας Σγούρος Μεταγλωττιστές Νικήτας Σγούρος
ΟΠΑ -Τεχνολογία Λογισμικού – Εμμ. Γιακουμάκης
Πρότυπα Προγραμματισμού
«Από τη MicroWorlds Pro στην Python»
Πρωτογενείς τύποι δεδομένων
Η στήριξη και η κίνηση στους ζωικούς οργανισμούς
Ενότητα 8 : Πίνακες IΙ Αλέξανδρος Τζάλλας
Η Κωνσταντινα και οι αραχνεσ τησ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Οι προοπτικές του αγροτικού τομέα στη Μεσσηνία
Σχεσιακεσ βασεισ δεδομενων
Αισθητηριακές Διαταραχές
Κεφάλαιο 7 10/11/2018 Ξένιος Αντωνιάδης.
Πείθουμε τους εαυτούς μας ότι η ζωή μας θα είναι καλύτερη όταν θα παντρευτούμε, θα αποκτήσουμε ένα μωρό, μετά ένα ακόμα. Μετά αγχωνόμαστε διότι τα παιδιά.
Μεταγλωττιστές Μεταγλωττιστής είναι το λογισμικό το οποίο πραγματοποιεί την μετάφραση ενός προγράμματος από μία γλώσσα σε μία άλλη. Γιατί ασχολούμαστε.
الحث الكهرومغناطيسي مؤشرات الأداء
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Εισαγωγή στον αλγεβρικό λογισμό
Πείθουμε τους εαυτούς μας ότι η ζωή μας θα είναι καλύτερη όταν θα παντρευτούμε, θα αποκτήσουμε ένα μωρό, μετά ένα ακόμα. Μετά αγχωνόμαστε διότι τα παιδιά.
Αρχες διοικησησ & διαχειρισησ εργων
Πείθουμε τους εαυτούς μας ότι η ζωή μας θα είναι καλύτερη όταν θα παντρευτούμε, θα αποκτήσουμε ένα μωρό, μετά ένα ακόμα. Μετά αγχωνόμαστε διότι τα παιδιά.
Max-Flow: Non-terminating example with irrational capatcities
Μεταγράφημα παρουσίασης:

ΕΑΠ – ΠΛΗ24 2η ΟΣΣ

Συντακτική Ανάλυση Είσοδος: ακολουθία tokens από τον Λεκτικό Αναλυτή Σκοπός: να ελεγχθεί οτι η ακολουθία αυτή είναι μια πρόταση της δοθείσας γραμματικής Βασικές Μέθοδοι: Bottom-up, Top-down Απαιτούνται κατάλληλες γραμματικές για διευκόλυνση της B-U ή T-D συντακτικής ανάλυσης ΕΑΠ – ΠΛΗ24

Bottom-up συντακτική ανάλυση Shift-reduce Από μια συμβολοσειρά εισόδου w προχωράμε προς τη ρίζα. Παράδειγμα: S  aΑcBe A  Ab | b B  d w = abbcde abbcde  aAbcde  aAcde  aAcBe  S υλοποιείται με τη βοήθεια μιας στοίβας (stack) Operator Precedence: κατάλληλη για συντακτική ανάλυση αριθμητικών εκφράσεων ΕΑΠ – ΠΛΗ24

Τop-down συντακτική ανάλυση Recursive descent – Αναδρομική κατάβαση Ξεκινώντας από την αρχική μεταβλητή της γραμματικής προσπαθούμε να δημιουργήσουμε τη συμβολοσειρά. Παράδειγμα: S  cΑd A  ab | a w = cad S  cAd  cabd : backtracking (1) (1)  cad Υλοποίηση: για κάθε τερματικό σύμβολο μπορούμε να δημιουργήσουμε μια ρουτίνα ΕΑΠ – ΠΛΗ24

Προβλήματα Top-down ανίχνευσης Αριστερή Αναδρομή (left recursion) αν υπάρχει κανόνας της μορφής Α  Αα (οδηγεί σε ατελείωτη ανακύκλωση) Backtracking: χρονοβόρα διαδικασία Επηρεάζεται από τη σειρά εφαρμογής των κανόνων. ΕΑΠ – ΠΛΗ24

Όροι καταλληλότητας μιας γραμματικής για αναδρομική κατάβαση Όροι καταλληλότητας μιας γραμματικής για αναδρομική κατάβαση Να μην είναι διφορούμενη Να μην υπάρχουν αριστερές αναδρομές Κάθε κανόνας που περιέχει Ν εναλλακτικά δεξιά μέρη να ξαναγραφεί έτσι ώστε τουλάχιστον τα Ν-1 να αρχίζουν με τερματικό σύμβολο Να είναι παραγοντοποιημένη ΕΑΠ – ΠΛΗ24

Απαλοιφή αριστερής αναδρομής Α  Αα | β, όπου β δεν αρχίζει με Α: Α  βΑ’ Α’  αΑ’ | ε Παράδειγμα: S -> A | aS A -> Sb | Ab | c Έμμεση αναδρομή A -> Sb => A -> Ab | aSb | c Άμεση Αναδρομή A -> Ab A -> aSbB | cB B -> bB | ε ΕΑΠ – ΠΛΗ24

Αριστερά παραγοντοποίηση Η απαλοιφή αριστερών αναδρομών δεν αρκεί: S  if C then S else S | if C then S Ο μεταγλωττιστής δεν θα ήξερε ποιός κανόνας είναι προτιμότερος: Γενική μορφή παραγοντοποίησης Α  αβ | αγ γίνεται Α  αΑ’ Α’  β | γ Παράδειγμα 4.7: S  iCtS | iCtSeS | a γίνεται S  iCtSS’ | a S’  eS | ε ΕΑΠ – ΠΛΗ24

Συντακτικά Κατευθυνόμενη Μετάφραση (Τετράδες) PLACE:Θέση όπου βρίσκεται αποθηκευμένη η τιμή μιας l-value ή μιας r-value TYPE: Ο τύπος μιας l-value ή μιας r-value ΝΕΧΤ: Λίστα από ετικέτες τετράδων που περιέχουν άλματα στην επόμενη εντολή TRUE,FALSE:Λίστα από ετικέτες τετράδων που περιέχουν άλματα στον κώδικα που πρέπει να εκτελεστεί, αν μια συνθήκη είναι αληθής ή ψευδής NEXTQUAD():Επιστρέφει τον αριθμό της επόμενης τετράδας GENQUAD(op,x,y,z):Γεννά την επόμενη τετράδα op,x,y,z ΝΕWTEMP(t): Δημιουργεί μια νέα προσωρινή μεταβλητή τύπου t EMPTYLIST(): Δημιουργεί μια κενή λίστα ετικετών τετράδων ΕΑΠ – ΠΛΗ24

Εμβέλεια Μεταβλητών (1) ΕΑΠ – ΠΛΗ24

Εμβέλεια μεταβλητών (2) PROCEDURE main; TYPE t = FLOAT; VAR x,y,z:INTEGER; PROCEDURE sub1; TYPE t = STRING; VAR a,y,z : BOOLEAN; PROCEDURE sub2; VAR a,b,z: t; BEGIN (* body of sub2 *) END (* body of sub1 *) ΒEGIN (* body of main *) Ετικέτα Είδος Τύπος main Ρουτίνα x Μεταβλητή INTEGER sub1 Ρουτίνα t Τύπος (= STRING) y Μεταβλητή BOOLEAN sub2 Ρουτίνα a Μεταβλητή t (= STRING) b Μεταβλητή t (= STRING) z Μεταβλητή t (= STRING) ΕΑΠ – ΠΛΗ24