Εισαγωγή στον προγραμματισμό Μέρος 3 ο Προγραμματιστικά περιβάλλοντα § 6.7.

Slides:



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

Επιμέλεια: Τίκβα Χριστίνα
Προγραμματισμοσ υπολογιστη
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Λογισμικό Συστήματος Κλειώ Σγουροπούλου.
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
Προγραμματισμός υπολογιστή
Ενότητα 1: Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
ΜΑΘ-3122/106 Προγραμματισμός
HY100 : ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΟΝΤΕΣ Αντώνιος Σαββίδης, Χρήστος.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΜΑΡΤΙΟΣ 2012 Π. Σοφράς.
1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών.
ΗΥ 150 – ΠρογραμματισμόςΞενοφών Ζαμ π ούλης ΗΥ-150 Προγραμματισμός Αλγόριθμοι και Προγράμματα.
ΕΙΣΑΓΩΓΗ ΜΑΘΗΜΑ 1.
ΕΠΛ223 Θεωρία και Πρακτική Μεταγλωττιστών Εαρινό Εξάμηνο 2002 Κ. Μουρλάς, Λέκτορας Σημείωση: Οι διαφάνειες αυτές βασίζονται κατά το μεγαλύτερο μέρος τους.
Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής
Ίδιες αρχές λειτουργίας
ΤΜΗΜΑ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΒΙΟΜΗΧΑΝΙΑΣ
Προγραμματισμός PASCAL
Κεφ.1 Εισαγωγη στην εννοια του Αλγοριθμου και στον Προγραμματισμο
1 Οργάνωση και Αρχιτεκτονική Υπολογιστών Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Οργάνωση και Αρχιτεκτονική.
Κεφάλαιο 6 -Περιβάλλοντα Ανάπτυξης Εφαρμογών
ΕΠΛ Θεωρία και Πρακτική Μεταγλωττιστών8-1 Μετάφραση κατευθυνόμενη από τη σύνταξη Ένας μεταγλωττιστής πρέπει όχι απλώς να αναγνωρίζει κατά πόσο μία.
Σχεδίαση Αλγορίθμων. Διεργασίες (1/2) Μία διεργασία αλληλεπιδρά με το περιβάλλον της δεχόμενη είσοδο και παράγοντας έξοδο.
Κεφάλαιο 6: Εισαγωγή στον προγραμματισμό Φυσικές και τεχνητές γλώσσες.
Λογισμικό (Software).
ΜΑΘΗΜΑ: ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΔΙΔΑΣΚΟΝΤΕΣ: Π. ΚΑΤΣΑΡΟΣ Τρίτη, 31 Μαρτίου 2015Τρίτη, 31 Μαρτίου 2015Τρίτη, 31 Μαρτίου 2015Τρίτη, 31 Μαρτίου 2015Τμ. Πληροφορικής,
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΜΑΘΗΜΑ: ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΔΙΔΑΣΚΟΝΤΕΣ: Π. ΚΑΤΣΑΡΟΣ Τετάρτη, 1 Απριλίου 2015Τετάρτη, 1 Απριλίου 2015Τετάρτη, 1 Απριλίου 2015Τετάρτη, 1 Απριλίου 2015Τμ. Πληροφορικής,
Καθηγητής: Σπύρος Ξουργιάς1 Η Έννοια του Προγράμματος Ακριβής προσδιορισμός προβλήματος Ακριβής προσδιορισμός προβλήματος Ανάπτυξη αντίστοιχου αλγορίθμου.
Για τη διεκπεραίωση ενός προβλήματος πρέπει να ακολουθηθεί η εξής διαδικασία:  να γραφεί ο αλγόριθμος να συνταχθεί το πρόγραμμα σε γλώσσα υψηλού επιπέδου.
1.5 Γλώσσες Προγραμματισμού
Κατανόηση (δεδομένα – ζητούμενα) Ανάλυση σε απλούστερα προβλήματα Επίλυση με οργανωμένα, απολύτως καθορισμένα, πεπερασμένα βήματα ΑΛΓΟΡΙΘΜΟΣ.
1 Εισαγωγή στη Java Χρήσιμες Διευθύνσεις Χαρακτηριστικά της Java Εργαλεία της Java Εργαλεία της Java Μεταγλώττιση στοιχειωδών εφαρμογών.
ΛΑΔΑΚΑΚΟΣ ΘΑΛΗΣ Α.Μ ΔΙΑΧΕΙΡΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Προγραμματισμός Η / Υ 6 η Διάλεξη.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΤΟ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ ΓΛΩΣΣΑΣ PASCAL ΠΑΡΟΥΣΙΑΣΗ ΠΑΡΑΔΕΙΓΜΑΤΟΣ: ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΜΕ ΤΙΣ ΤΡΕΙΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ. ΥΠΟΛΟΓΙΣΤΗΣ Μηχανή που μπορεί να φέρει σε πέρας πνευματικές εργασίες ρουτίνας με μεγάλη ταχύτητα.
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 12: Παραγωγή Ενδιάμεσου Κώδικα (Σημασιολογικές ρουτίνες μετάφρασης-Μέρος Β) Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής.
Περιεχόμενα Μαθήματος
ΜΑΘΗΜΑ: ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΔΙΔΑΣΚΟΝΤΕΣ: Κ. ΛΑΖΟΣ - Π. ΚΑΤΣΑΡΟΣ Τρίτη, 14 Απριλίου 2015Τρίτη, 14 Απριλίου 2015Τρίτη, 14 Απριλίου 2015Τρίτη, 14 Απριλίου 2015Τμ.
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 8: Πίνακας Συμβόλων Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής ΤΕ Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας.
Από την ιδέα μέχρι το λογισμικό. Ξεκινώντας από το πρόβλημα...
HY340 : ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΩΝ Αντώνιος Σαββίδης.
Μεταγλωττιστές (Compilers) (Θ) Ενότητα 11: Βελτιστοποίηση Ενδιάμεσου Κώδικα Κατερίνα Γεωργούλη Τμήμα Μηχανικών Πληροφορικής ΤΕ Ανοικτά Ακαδημαϊκά Μαθήματα.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language.
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
Γνωριμία με το Λογισμικό του υπολογιστή Μια παρουσίαση για τους μαθητές της Α΄ Τάξης του 49ου Γυμνασίου Αθήνας Διδάσκων: Χ. Μοτσενίγος 49ο Γυμνάσιο Αθήνας.
Γλώσσες Προγραμματισμού Μεταγλωττιστές Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου.
1 Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Κεφάλαιο 6 Παπαγιάννη Νάσια Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών ΕΜΠ.
Πληροφορική 2 Γλώσσες Προγραμματισμού 1. Γλώσσες προγραμματσιμού  Επιτρέπουν την κωδικοποίηση των αλγορίθμων  Η εκτέλεση ενός προγράμματος θα πρέπει.
ΚΕΦ 6 ο ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. ΣΤΑΔΙΑ ΕΠΙΛΥΣΗΣ ΕΝΟΣ ΠΡΟΒΛΗΜΑΤΟΣ ΚΑΤΑΝΟΗΣΗ – ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ (ΖΗΤΟΥΜΕΝΑ - ΔΕΔΟΜΕΝΑ) ΣΧΕΔΙΑΣΜΟΣ - ΑΝΑΠΤΥΞΗ ΛΥΣΗΣ.
ΕΙΔΗ, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 7 © Βελώνης Γεώργιος.
Εισαγωγή στην Python.
Βρόχος Do … Loop Σκοπός Μαθήματος Χρήση Do… Loop για την εκτέλεση μιας ομάδας εντολών μέχρι να εκπληρωθεί μια συγκεκριμένη συνθήκη. Αθήνα, 2015.
ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α΄ ΛΥΚΕΙΟΥ
Ενισχυτική διδασκαλία
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
ΓΛΩΣΣΕΣ & ΕΡΓΑΛΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Ανάπτυξη Εφαρμογών για Φορητές Συσκευές
2ο ΓΥΜΝΑΣΙΟ ΣΗΤΕΙΑΣ - ΤΑΞΗ Γ'
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ Η/Υ
ΠΛΗΡΟΦΟΡΙΚΗ Γ΄ Γυμνασίου Α΄ Τρίμηνο
Γ' ΤΑΞΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Εισαγωγή στον Προγραμματισμό (στη γλώσσα Java)
Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό (στη γλώσσα Java)
Μεταγράφημα παρουσίασης:

Εισαγωγή στον προγραμματισμό Μέρος 3 ο Προγραμματιστικά περιβάλλοντα § 6.7

Προγραμματιστικά περιβάλλοντα Μεταγλωττιστές και διερμηνευτές Μεταγλωττιστές και διερμηνευτές Πηγαίο πρόγραμμα και αντικείμενο πρόγραμμα Πηγαίο πρόγραμμα και αντικείμενο πρόγραμμα Βιβλιοθήκες Βιβλιοθήκες Συνδέτης-φορτωτής Συνδέτης-φορτωτής Εκτελέσιμο πρόγραμμα Εκτελέσιμο πρόγραμμα

Μεταγλωττιστές (Compilers) Ο μεταγλωττιστής δέχεται ένα πρόγραμμα γραμμένο σε γλώσσα υψηλού επιπέδου και παράγει ένα ισοδύναμο πρόγραμμα σε γλώσσα μηχανής Ο μεταγλωττιστής δέχεται ένα πρόγραμμα γραμμένο σε γλώσσα υψηλού επιπέδου και παράγει ένα ισοδύναμο πρόγραμμα σε γλώσσα μηχανής

Διερμηνευτές (Interpreters) Ο διερμηνευτής διαβάζει μία προς μία τις εντολές του αρχικού προγράμματος και για κάθε μία εκτελεί αμέσως μια ισοδύναμη ακολουθία εντολών μηχανής Ο διερμηνευτής διαβάζει μία προς μία τις εντολές του αρχικού προγράμματος και για κάθε μία εκτελεί αμέσως μια ισοδύναμη ακολουθία εντολών μηχανής

Πηγαίο πρόγραμμα και αντικείμενο πρόγραμμα Πηγαίο πρόγραμμα (source code) λέγεται το αρχικό πρόγραμμα που είναι γραμμένο σε γλώσσα υψηλού επιπέδου Πηγαίο πρόγραμμα (source code) λέγεται το αρχικό πρόγραμμα που είναι γραμμένο σε γλώσσα υψηλού επιπέδου Αντικείμενο πρόγραμμα (object code) λέγεται το πρόγραμμα που παράγεται απ’ τον μεταγλωττιστή Αντικείμενο πρόγραμμα (object code) λέγεται το πρόγραμμα που παράγεται απ’ τον μεταγλωττιστή

Βιβλιοθήκες (libraries) και συνδέτης- φορτωτής (linker-loader) Το αντικείμενο πρόγραμμα είναι γλώσσα μηχανής αλλά συνήθως χρειάζεται επιπλέον κώδικα για να εκτελεστεί Το αντικείμενο πρόγραμμα είναι γλώσσα μηχανής αλλά συνήθως χρειάζεται επιπλέον κώδικα για να εκτελεστεί Ο επιπλέον κώδικας είναι ήδη μεταγλωττισμένος και αποθηκευμένος σε βιβλιοθήκες Ο επιπλέον κώδικας είναι ήδη μεταγλωττισμένος και αποθηκευμένος σε βιβλιοθήκες Ο συνδέτης-φορτωτής συνδέει το αντικείμενο πρόγραμμα με τις βιβλιοθήκες και παράγει το εκτελέσιμο πρόγραμμα (executable) Ο συνδέτης-φορτωτής συνδέει το αντικείμενο πρόγραμμα με τις βιβλιοθήκες και παράγει το εκτελέσιμο πρόγραμμα (executable)

Μεταγλώττιση και σύνδεση προγράμματος Αρχικό Πρόγραμμα Αρχικό Πρόγραμμα Αντικείμενο Πρόγραμμα Εκτελέσιμο Πρόγραμμα Εκτελέσιμο Πρόγραμμα Μεταγλωττιστής Συνδέτης Βιβλιοθήκες

Λάθη προγράμματος Ένα πρόγραμμα μπορεί να έχει Ένα πρόγραμμα μπορεί να έχει Γραμματικά και συντακτικά λάθη που εντοπίζονται κατά τη φάση της μεταγλώττισης Γραμματικά και συντακτικά λάθη που εντοπίζονται κατά τη φάση της μεταγλώττισης Λογικά λάθη, λάθη δηλαδή στο σχεδιασμό και στους αλγορίθμους του προγράμματος, τα οποία εμφανίζονται μόνο κατά την εκτέλεση του προγράμματος Λογικά λάθη, λάθη δηλαδή στο σχεδιασμό και στους αλγορίθμους του προγράμματος, τα οποία εμφανίζονται μόνο κατά την εκτέλεση του προγράμματος

Διαδικασία μετάφρασης και εκτέλεσης ενός προγράμματος Ανάλυση – Έλεγχος Ανίχνευση - Εκτέλεση Εντολή 1 Ανάλυση – Έλεγχος Ανίχνευση - Εκτέλεση Ανάλυση – Έλεγχος Ανίχνευση - Εκτέλεση Εντολή 2 Εντολή n... Μεταγλώττιση Φόρτωση Σύνδεση όλων των εντολών Εκτέλεση ολόκληρου του προγράμματος

Πηγαίος κώδικας (Source code) Program Exponent; var Number: Integer; Power: Integer; Product: Integer; Counter: Integer; BeginRead(Number);Read(Power); Product := 1; Counter := Power; While Counter > 0 Do Begin Product := Product * Number; Counter := Counter – 1; End;Write(Product);End.

Βήματα Μετασχηματισμού των Γραπτών Προγραμμάτων Πηγαίος Κώδικας Program Exponent; var Number: Integer; Power: Integer; Product: Integer; Counter: Integer; Begin Read(Number); Read(Power); Product := 1; Counter := Power; While Counter > 0 Do Begin Product := Product * Number; Counter := Counter – 1; End; Write(Product); End. Σαρωτής (Scanner) Αναλυτής Προτάσεων (sentence analyzer) Ελεγκτής Τύπων (Type Validator) Γεννήτρια Κώδικα (Code Generator) Βελτιστοποιητής (Optimizer) STORE JZERO STORE LOAD ADD STORE JUMP HALT LOAD SUB COUNTER ONE PRODUCT MPLICAND PRODUCT LOOP MPLIER FINISH COUNTER FINISH: ONE: MPLIER: MPLICAND: PRODUCT: COUNTER: LOOP: