Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής

Slides:



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

Επιμέλεια: Τίκβα Χριστίνα
Προγραμματισμοσ υπολογιστη
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ
Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής
Κεφάλαιο 3 ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
7.5.2 Αντικειμενοστραφής προγραμματισμός
Τι είναι ο υπολογιστής; Τι είναι ο προγραμματισμός
Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Ενότητα 1: Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού
Εκτέλεση Αλγορίθμων σε ψευδογλώσσα
ΑΕΠΠ 2ο Κεφάλαιο: Βασικές Έννοιες Αλγορίθμων
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΗ
ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
1 Πρόγραμμα ονομάζεται η διατύπωση του αλγορίθμου σε μορφή κατανοητή από τον υπολογιστή Το Υλικό μπορεί μόνο Να αποθηκεύει και να ανακτά ακολουθίες δυαδικών.
ΕΙΣΑΓΩΓΗ ΜΑΘΗΜΑ 1.
ΕΠΛ223 Θεωρία και Πρακτική Μεταγλωττιστών Εαρινό Εξάμηνο 2002 Κ. Μουρλάς, Λέκτορας Σημείωση: Οι διαφάνειες αυτές βασίζονται κατά το μεγαλύτερο μέρος τους.
ΑΕΠΠ 1ο Κεφάλαιο Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής 1 Ο Λύκειο Ρόδου.
Ίδιες αρχές λειτουργίας
Εισαγωγή στον προγραμματισμό
Κεφάλαιο 3 ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
Κεφ.1 Εισαγωγη στην εννοια του Αλγοριθμου και στον Προγραμματισμο
ΑΕΠΠ 1ο Κεφάλαιο Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής 1 Ο Λύκειο Ρόδου.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
Κεφάλαιο 6 -Περιβάλλοντα Ανάπτυξης Εφαρμογών
Σχεδίαση Αλγορίθμων. Διεργασίες (1/2) Μία διεργασία αλληλεπιδρά με το περιβάλλον της δεχόμενη είσοδο και παράγοντας έξοδο.
Κεφάλαιο 6: Εισαγωγή στον προγραμματισμό Φυσικές και τεχνητές γλώσσες.
Ενότητα Α.4. Δομημένος Προγραμματισμός
Λογισμικό (Software).
ΜΑΘΗΜΑ: ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΔΙΔΑΣΚΟΝΤΕΣ: Π. ΚΑΤΣΑΡΟΣ Τρίτη, 31 Μαρτίου 2015Τρίτη, 31 Μαρτίου 2015Τρίτη, 31 Μαρτίου 2015Τρίτη, 31 Μαρτίου 2015Τμ. Πληροφορικής,
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
ΜΑΘΗΜΑ: ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΔΙΔΑΣΚΟΝΤΕΣ: Π. ΚΑΤΣΑΡΟΣ Τετάρτη, 1 Απριλίου 2015Τετάρτη, 1 Απριλίου 2015Τετάρτη, 1 Απριλίου 2015Τετάρτη, 1 Απριλίου 2015Τμ. Πληροφορικής,
Καθηγητής: Σπύρος Ξουργιάς1 Η Έννοια του Προγράμματος Ακριβής προσδιορισμός προβλήματος Ακριβής προσδιορισμός προβλήματος Ανάπτυξη αντίστοιχου αλγορίθμου.
Για τη διεκπεραίωση ενός προβλήματος πρέπει να ακολουθηθεί η εξής διαδικασία:  να γραφεί ο αλγόριθμος να συνταχθεί το πρόγραμμα σε γλώσσα υψηλού επιπέδου.
1.5 Γλώσσες Προγραμματισμού
Κατανόηση (δεδομένα – ζητούμενα) Ανάλυση σε απλούστερα προβλήματα Επίλυση με οργανωμένα, απολύτως καθορισμένα, πεπερασμένα βήματα ΑΛΓΟΡΙΘΜΟΣ.
Διδακτική της Πληροφορικής ΗΥ302 Εργασία :Παρουσίαση σχολικού βιβλίου Γ’ Λυκείου Τεχνολογικής Κατεύθυνσης «Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον»
ΛΑΔΑΚΑΚΟΣ ΘΑΛΗΣ Α.Μ ΔΙΑΧΕΙΡΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Προγραμματισμός Η / Υ 6 η Διάλεξη.
ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ 2: ΘΕΜΑΤΑ ΘΕΩΡΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ Η/Υ
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ. ΥΠΟΛΟΓΙΣΤΗΣ Μηχανή που μπορεί να φέρει σε πέρας πνευματικές εργασίες ρουτίνας με μεγάλη ταχύτητα.
ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
ΜΑΘΗΜΑ: ΜΕΤΑΓΛΩΤΤΙΣΤΕΣ ΔΙΔΑΣΚΟΝΤΕΣ: Κ. ΛΑΖΟΣ - Π. ΚΑΤΣΑΡΟΣ Τρίτη, 14 Απριλίου 2015Τρίτη, 14 Απριλίου 2015Τρίτη, 14 Απριλίου 2015Τρίτη, 14 Απριλίου 2015Τμ.
Κεφάλαιο 10 – Υποπρογράμματα
Από την ιδέα μέχρι το λογισμικό. Ξεκινώντας από το πρόβλημα...
ΚΕΦΑΛΑΙΟ Το αλφάβητο της ΓΛΩΣΣΑΣ
Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό
Γλώσσες Προγραμματισμού Μεταγλωττιστές Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου.
1 Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Κεφάλαιο 6 Παπαγιάννη Νάσια Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών ΕΜΠ.
Εισαγωγή στον προγραμματισμό ΤΑΞΗ: Γ’ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ: ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ.
Εισαγωγή στον προγραμματισμό Μέρος 3 ο Προγραμματιστικά περιβάλλοντα § 6.7.
Πληροφορική 2 Γλώσσες Προγραμματισμού 1. Γλώσσες προγραμματσιμού  Επιτρέπουν την κωδικοποίηση των αλγορίθμων  Η εκτέλεση ενός προγράμματος θα πρέπει.
ΚΕΦ 6 ο ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. ΣΤΑΔΙΑ ΕΠΙΛΥΣΗΣ ΕΝΟΣ ΠΡΟΒΛΗΜΑΤΟΣ ΚΑΤΑΝΟΗΣΗ – ΑΝΑΛΥΣΗ ΠΡΟΒΛΗΜΑΤΟΣ (ΖΗΤΟΥΜΕΝΑ - ΔΕΔΟΜΕΝΑ) ΣΧΕΔΙΑΣΜΟΣ - ΑΝΑΠΤΥΞΗ ΛΥΣΗΣ.
ΕΙΔΗ, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κεφάλαιο 7 © Βελώνης Γεώργιος.
ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α΄ ΛΥΚΕΙΟΥ
Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Ανάπτυξη Εφαρμογών για Φορητές Συσκευές
Στοιχεία Δομημένου Προγραμματισμού
2ο ΓΥΜΝΑΣΙΟ ΣΗΤΕΙΑΣ - ΤΑΞΗ Γ'
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Κεφάλαιο 3 ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΥΠΟΔΕΙΓΜΑΤΑ  Προγραμματιστικό Υπόδειγμα: Είναι ένα πρότυπο ανάπτυξης προγραμμάτων, δηλ. μια καθορισμένη μεθοδολογία με βάση την οποία.
ΠΛΗΡΟΦΟΡΙΚΗ Γ΄ Γυμνασίου Α΄ Τρίμηνο
Ιεραρχική σχεδίαση Καθορίζονται οι βασικές λειτουργίες σε ανώτερο επίπεδο και στη συνέχεια γίνεται διάσπαση σε όλο και μικρότερες λειτουργίες μέχρι το.
Γ' ΤΑΞΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Μεταγράφημα παρουσίασης:

Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής 1Ο Λύκειο Ρόδου ΑΕΠΠ 6ο Κεφάλαιο Γεωργαλλίδης Δημήτρης Καθηγητής Πληροφορικής

Η έννοια του Προγράμματος Στάδια επίλυσης προβλήματος: Προσδιορισμός του προβλήματος Ανάπτυξη του αλγορίθμου Διατύπωση του αλγορίθμου σε κατανοητή μορφή από τον Η/Υ

Γλώσσες προγραμματισμού Γλώσσες Μηχανής Συμβολικές Γλώσσες (Γλώσσες χαμηλού επιπέδου) Γλώσσες υψηλού επιπέδου Γλώσσες 4ης γενιάς

Συμβολική Γλώσσα (Assembly) Γλώσσα Μηχανής Συμβολική Γλώσσα (Assembly)

Γλώσσες Μηχανής Κάθε εντολή είναι μια ακολουθία από 0 και 1. Άμεσα κατανοητή από τον Η/Υ αλλά όχι από τον άνθρωπο. Αποτέλεσε τον πρώτο τρόπο προγραμματισμού ενός Η/Υ. Χρησιμοποιείται και σήμερα αφού η εκτέλεση οποιουδήποτε προγράμματος προϋποθέτει τη μετάφρασή του (μέσω ειδικού προγράμματος) σε γλώσσα μηχανής. Το παραγόμενο πρόγραμμα εκτελείται μόνο από τον Η/Υ για τον οποίο φτιάχτηκε. (Εξαρτώμενο από την αρχιτεκτονική του Η/Υ).

Συμβολικές Γλώσσες (Γλώσσες χαμηλού επιπέδου) Κάθε εντολή είναι μια συμβολική λέξη (π.χ. ADD). Πιο κατανοητή από τον άνθρωπο αλλά όχι από τον Η/Υ. Απαιτείται η χρήση ειδικού προγράμματος (συμβολομεταφραστής) για τη μετάφρασή .προγράμματος σε γλώσσα μηχανής. Χρησιμοποιείται και σήμερα για ειδικούς σκοπούς. Το παραγόμενο πρόγραμμα εκτελείται μόνο από τον Η/Υ για τον οποίο φτιάχτηκε. (Εξαρτώμενο από την αρχιτεκτονική του Η/Υ).

Γλώσσες υψηλού επιπέδου Κάθε εντολή χρησιμοποιεί απλές λέξεις της αγγλικής γλώσσας ακολουθώντας αυστηρούς κανόνες σύνταξης, π.χ. (γλώσσα Pascal): readln (arithmos); for i:=1 to 10 do dinami := arithmos * arithmos; Κατανοητή από τον άνθρωπο αλλά όχι από τον Η/Υ . Απαιτείται η χρήση μεταφραστικού προγράμματος για τη μετάφρασή του κώδικα σε γλώσσα μηχανής.

Γλώσσες υψηλού επιπέδου Πλεονεκτήματα: Ανεξαρτησία από τον τύπο του Η/Υ. Μεταφερσιμότητα σε οποιονδήποτε Η/Υ. Εύκολη εκμάθηση της γλώσσας. Εύκολη διόρθωση και συντήρηση του προγράμματος. Γνωστές γλώσσες υψηλού επιπέδου : Fortran, Cobol, Lisp, Prolog, Basic, Pascal, C, C++, Java, Algol, PL1, κ.α.

Γλώσσες υψηλού επιπέδου Προγραμματισμός οδηγούμενος από το γεγονός (event driven): Δυνατότητα εκτέλεσης λειτουργιών με την πραγματοποίηση κάποιου γεγονότος (π.χ.: κλικ ποντικιού, πάτημα πλήκτρου). Οπτικός προγραμματισμός (visual programming): Δυνατότητα δημιουργίας γραφικού περιβάλλοντος (μενού, πλαίσια διαλόγου). Γλώσσες που υποστηρίζουν τα παραπάνω χαρακτηριστικά: Visual Basic, Visual C++, Java.

Γλώσσες 4ης γενιάς Πρόκειται για γλώσσες ερωταπαντήσεων που επιτρέπουν την ανάκτηση, εμφάνιση και επεξεργασία πληροφοριών από βάσεις δεδομένων. Π.χ. SQL Select ename, job, sal from employes where deptno = 20 and sal > 1000

Ποια είναι η καλύτερη ΓΠ; Δεν υπάρχει… Η επιλογή της κατάλληλης γλώσσας γίνεται με βάση: Το είδος της εφαρμογής (προβλήματος). Το υπολογιστικό περιβάλλον στο οποίο θα εκτελεστεί η εφαρμογή. Το διαθέσιμο προγραμματιστικό περιβάλλον και τις γνώσεις μας.

Φυσικές - Τεχνητές Γλώσσες Αλφάβητο Το σύνολο των συμβόλων (στοιχείων) της. Λεξιλόγιο Το σύνολο των αποδεκτών συμβολο-ακολουθιών. Γραμματική Τυπικό (Τυπολογικό) κανόνες ορθότητας λέξεων Συντακτικό κανόνες διάταξης λέξεων (σχηματισμός προτάσεων) Σημασιολογία Κανόνες που καθορίζουν το νόημα των λέξεων και των προτάσεων.

Φυσικές vs Τεχνητές Γλώσσες Φυσικές Γλώσσες Δυνατότητα συνεχούς εξέλιξης - μετάλλαξης. Τεχνητές Γλώσσες Χαρακτηρίζονται από στασιμότητα η οποία διακόπτεται μόνο σε περίπτωση ανάπτυξης κάποιας νέας έκδοσης.

Τεχνικές Σχεδίασης Προγραμμάτων Ιεραρχική Σχεδίαση Τμηματικός προγραμματισμός Δομημένος προγραμματισμός

Ιεραρχική Σχεδίαση Σχεδίαση από πάνω προς τα κάτω με συνεχή διαίρεση του προβλήματος σε υποπροβλήματα.

Ιεραρχική Σχεδίαση

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

Δομημένος προγραμματισμός Στηρίζεται στη χρήση τριών και μόνο δομών: Ακολουθία Επιλογή Επανάληψη Κάθε πρόγραμμα ή τμήμα προγράμματος έχει μία μόνο είσοδο και μία μόνο έξοδο. Εμπεριέχει τις αρχές της ιεραρχικής σχεδίασης και του τμηματικού προγραμματισμού.

GOTO Αν αριθμός > 0 τότε goto 1 Αν αριθμός = 0 τότε goto 2 Γράψε ‘Αρνητικός’ goto 4 1: Γράψε ‘θετικός’ 2: Γράψε ‘Μηδέν’ 4: ! Συνέχεια

Δομημένος προγραμματισμός Αρχικός του σκοπός ήταν η μείωση των εντολών GOTO. Επικράτησε ως μεθοδολογία σύνταξης προγραμμάτων γιατί εξασφαλίζει: Δημιουργία απλούστερων προγραμμάτων Άμεση μεταφορά των αλγορίθμων σε προγράμματα Διευκόλυνση ανάλυσης του προγράμματος σε τμήματα Περιορισμός των λαθών κατά την ανάπτυξη του προγράμματος Ευκολότερη ανάγνωση και κατανόηση από τρίτους Ευκολότερη διόρθωση και συντήρηση

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Θεωρεί ως πρωτεύοντα δομικά στοιχεία τα δεδομένα από τα οποία δημιουργούνται με κατάλληλη μορφοποίηση τα αντικείμενα. Τα δεδομένα αποτελούν τα χαρακτηριστικά ενός αντικειμένου. Το πρόγραμμα περιγράφει ενέργειες που εφαρμόζονται πάνω στα δεδομένα. Οι ενέργειες περιγράφουν τη συμπεριφορά των αντικειμένων. Τα προγράμματα που προκύπτουν είναι πιο ευέλικτα και επαναχρησιμοποιήσιμα. Ο ΑΠ χρησιμοποιεί την ιεραρχική σχεδίαση, τον τμηματικό προγραμματισμό και ακολουθεί τις αρχές του δομημένου προγραμματισμού.

ΠΑΡΑΛΛΗΛΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Το πρόγραμμα εκτελείται σε Η/Υ που διαθέτει παράλληλους επεξεργαστές οι οποίοι χρησιμοποιούν κοινή μνήμη. Το πρόγραμμα διαιρείται σε τμήματα που εκτελούνται παράλληλα. Τα τμήματα αυτά προγραμματίζονται σε περιβάλλον που επιτρέπει τον παράλληλο προγραμματισμό.

Ταξινόμηση Γλωσσών Προγραμματισμού Διαδικασιακές (Αλγοριθμικές) Μη διαδικασιακές Συναρτησιακές Ερωταπαντήσεων Γενικής χρήσης Επιστημονικής κατεύθυνσης Εμπορικής κατεύθυνσης Προγραμματισμού συστημάτων Τεχνητής νοημοσύνης Ειδικής χρήσης Βλ. Εφαρμογή

Άσκηση GOTO Αν αριθμός > 0 τότε goto 1 Αν αριθμός = 0 τότε goto 2 Γράψε ‘Αρνητικός’ goto 4 1: Γράψε ‘θετικός’ 2: Γράψε ‘Μηδέν’ 4: ! Συνέχεια Να μετατραπεί ώστε να ακολουθεί τις αρχές του δομημένου προγραμματισμού.

Για το σπίτι: Καλό Διάβασμα!!! Α) Τετράδιο μαθητή: Κεφάλαιο 6: σελ.117 – 137 Ερωτήσεις 1 – 11, σελ. 141 (Να τις αριθμήσετε) Β) Τετράδιο μαθητή: Ερωτήσεις : 2-7, 9, 11-14, σελ. 59 – 60 Γ) Εφαρμογή: Καταγραφή χαρακτηριστικών των Γλωσσών προγραμματισμού Δ) Ασκήσεις (goto) : Λυμένο παράδειγμα, σελ. 134 βιβλίο μαθητή Τετράδιο μαθητή: ΔΤ1 & ΔΣ2, σελ. 58-59 Καλό Διάβασμα!!!

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

Συντάκτης (Editor) Το περιβάλλον στο οποίο πληκτρολογούμε τις εντολές του προγράμματος Το πρόγραμμα που προκύπτει ονομάζεται πηγαίο (source)

ΜΕΤΑΦΡΑΣΗ ΜΕΤΑΓΛΩΤΙΣΤΗΣ (Compiler) Δέχεται ως είσοδο ένα πρόγραμμα σε γλώσσα υψηλού επιπέδου και παράγει ένα ισοδύναμο πρόγραμμα σε γλώσσα μηχανής ΔΙΕΡΜΗΝΕΥΤΗΣ (Interpreter) Διαβάζει μια προς μία τις εντολές του αρχικού προγράμματος και για κάθε εντολή εκτελεί μια ισοδύναμη ακολουθία εντολών μηχανής.

ΜΕΤΑΓΛΩΤΙΣΤHΣ (Compiler) ΜΕΤΑΦΡΑΣΗ ΓΛΩΣΣΑ ΜΗΧΑΝΗΣ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΓΛΩΤΤΙΣΤΗΣ (compiler) ΑΝΤΙΚΕΙΜΕΝΟ ΠΡΟΓΡΑΜΜΑ ΠΗΓΑΙΟ ΠΡΟΓΡΑΜΜΑ source object

ΜΕΤΑΓΛΩΤΙΣΤHΣ (Compiler) Συντάκτης: Πηγαίο Πρόγραμμα Μεταγλωττιστής: Αντικείμενο πρόγραμμα Συνδέτης – Φορτωτής: Εκτελέσιμο πρόγραμμα

Συνδέτης – Φορτωτής Συνδέτης – Φορτωτής (Linker – Loader) ΑΝΤΙΚΕΙΜΕΝΟ object ΑΝΤΙΚΕΙΜΕΝΟ ΠΡΟΓΡΑΜΜΑ executable ΕΚΤΕΛΕΣΙΜΟ ΠΡΟΓΡΑΜΜΑ

Συνδέτης – Φορτωτής (Linker – Loader) Κάνει τη σύνδεση του αντικείμενου προγράμματος με: άλλα τμήματα προγράμματος που καλούνται μέσα από αυτό, με βιβλιοθήκες (libraries) της γλώσσας προγραμματισμού και παράγει το εκτελέσιμο (executable) πρόγραμμα.

ΜΕΤΑΓΛΩΤΙΣΤHΣ (Compiler) Συντάκτης: Πηγαίο Πρόγραμμα Μεταγλωττιστής: Αντικείμενο πρόγραμμα Συνδέτης – Φορτωτής: Εκτελέσιμο πρόγραμμα

ΔΙΕΡΜΗΝΕΥΤHΣ (Interpreter) ΕΝΤΟΛΗ 1 ΕΝΤΟΛΗ 2 … ΕΝΤΟΛΗ ν Ανάλυση → Έλεγχος → Ανίχνευση → Εκτέλεση Ανάλυση → Έλεγχος → Ανίχνευση → Εκτέλεση ……… Ανάλυση → Έλεγχος → Ανίχνευση → Εκτέλεση

ΔΙΕΡΜΗΝΕΥΤHΣ ΜΕΤΑΓΛΩΤΙΣΤHΣ Έχει το πλεονέκτημα της άμεσης εκτέλεσης και διόρθωσης. Η εκτέλεση γίνεται πιο αργά σε σχέση με την εκτέλεση του αντικείμενου προγράμματος που παράγει ο μεταγλωττιστής. Χρησιμοποιείται κατά τη φάση δημιουργίας του προγράμματος. ΜΕΤΑΓΛΩΤΙΣΤHΣ Για την εκτέλεση προαπαιτείται η μετάφραση και η σύνδεση. Η εκτέλεση γίνεται πιο γρήγορα. Χρησιμοποιείται για την τελική έκδοση και εκμετάλλευση του προγράμματος.

Για τη δημιουργία τη μετάφραση και την εκτέλεση ενός προγράμματος απαιτούνται τουλάχιστον τρία προγράμματα: Συντάκτης Μεταγλωττιστής Συνδέτης

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΣΦΑΛΜΑΤΑ ΣΥΝΤΑΚΤΙΚΑ Παραβίαση των κανόνων γραμματικής της γλώσσας προγραμματισμού. Ανιχνεύονται στο στάδιο της μεταγλώττισης είτε από τον μεταγλωττιστή είτε από το διερμηνευτή. ΛΟΓΙΚΑ Λάθη κατά την υλοποίηση του αλγορίθμου. Είναι τα πιο σημαντικά και εμφανίζονται μόνο κατά την εκτέλεση του προγράμματος.

Για το σπίτι: Καλό Διάβασμα!!! Α) Τετράδιο μαθητή: Κεφάλαιο 6: σελ.137 – 141 Ερωτήσεις 12 – 14, σελ. 141 (Να τις αριθμήσετε) Β) Τετράδιο μαθητή: Ερωτήσεις : 1, 8, 10, σελ. 59 – 60 Γ) Μετατροπή αλγορίθμου σε πρόγραμμα: …. Καλό Διάβασμα!!!