Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΗ Κεφάλαιο 7 ο | 7.1 – 7.38 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 1.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΗ Κεφάλαιο 7 ο | 7.1 – 7.38 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 1."— Μεταγράφημα παρουσίασης:

1 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΗ Κεφάλαιο 7 ο | 7.1 – 7.38 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 1

2 Κύριο διακριτικό γνώρισμα του υπολογιστή είναι η δυνατότηα προγραμματισμού του, με τη λειτουργία του να καθορίζεται από το πρόγραμμα που εκτελεί κάθε στιγμή. Ο προγραμματισμός, αποτελεί έναν από τους βασικούς τομείς της επιστήμης των υπολογιστών. 7.1 Προγραμματιζόμενη μηχανή 2 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

3 7.3 Πρόγραμμα Για να εκτελέσει ένας ηλεκτρονικός υπολογιστής ακόμη και την πιο απλή εργασία, θα πρέπει να του έχουν δοθεί λεπτομερείς οδηγίες για να την επιτελέσει. Αυτές οι οδηγίες αποτελούν το πρόγραμμα και εκτελούνται από την κεντρική μονάδα επεξεργασίας ( ΚΜΕ ) του υπολογιστή. Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 3

4 7.3.2 Η γλώσσα μηχανής Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα Τα πρώτα προγράμματα γράφονταν σε γλώσσα μηχανής, γλώσσα προγραμματισμού, της οποίας το αλφάβητο είναι το 0 και το 1. Ωστόσο η γραφή προγραμμάτων άμεσα σε γλώσσα μηχναής είναι μια πολύ δύσκολη και αντιπαραγωγική εργασία για δύο κυρίως λόγους :  Δυσκολία απομνημόνευσης των εντολών  Δυσκολία εντοπισμού λαθών 4

5 7.3.2 Η γλώσσα μηχανής Η γλώσσα μηχανής διαφέρει για κάθε τύπο ΚΜΕ. Κάθε εντολή στη γλώσσα μηχανής αποτελείται από δύο τμήματα, τον κωδικό λειτουγρίας και τον τελεστέο. Ο κωδικός λειτουργίας προσδιορίζει τη λειτουργία της εντολής ( αποθήκευσε, πρόσθεσε κ. α.). Ο τελεστέος αφορά τα δεδομένα στα οποία δρα η εντολή. Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 5

6 7.3.2 Γλώσσα μηχανής Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 6 Οι εντολές που αναγνωρίζει η ΚΜΕ ανήκουν σε μια από τις πιο κάτω κατηγορίες :  Εντολές μεταφοράς δεδομένων μεταξύ της ΚΜΕ και της κεντρικής μνήμης  Εντολές μεταφοράς δεδομένων μεταξύ των καταχωρητών  Εντολές αριθμητικών πράξεων  Εντολές λογικών πράξεων  Εντολές ελέγχου της ροής εκτέλεσης των εντολών  Διάφορες βοηθητικές εντολές

7 Γλώσσα Μηχανής 7 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

8 7.3.3 Συμβολικές Γλώσσες 8 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα Μια πρώτη προσπάθεια για τη διευκόλυνση της γραφής προγραμμάτων ήταν η γραφή τους σε συμβολική γλώσσα (assembly).

9 7.33 Συμβολικές γλώσσες Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 9 Στις συμβολικές γλώσσες, σε κάθε εντολή γλώσσς μηχανής αντιστοιχίζεται μια λέξη η οποία θυμίζει το σκοπό της εντολής. Επί πλέον δίνεται η δυνατότητα να χρησιμοποιούνται, στη θέση αριθμών ονόματα σταθερών ή μεταβλητών. Για παράδειγμα η εντολή σε γλώσσα μηχανής θα μπορούσε στη συμβολική γλώσσα να έχει τη μορφή

10 7.3.3 Συμβολικές γλώσσες Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα Τμήμα προγράμματος σε συμβολική γλώσσα για επεξεργαστή Intel 10

11 7.3.4 Γλώσσες υψηλού επιπέδου 11 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

12 7.3.4 Γλώσσες υψηλού επιπέδου Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 12 Οι συμβολικές γλώσσες διευκόλυναν τη γραφή προγραμμάτων όμως  ο προγραμματισμός εξακολουθεί να είναι μια επίπονη διαδικασία, καθώς οι εντολές είναι σε αντιστοιχία με τη γλώσσα μηχανής  Τα προγράμματα μπορούνα να εκτελεστούν μονο από τον τύπο υπολογιστή για τον οποίο είναι γραμμένα.

13 7.3.4 Γλώσσες υψηλού επιπέδου Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 13 Για να αντιμετωπιστουν τέτοιου είδους προβλήματα, δημιουργήθηκαν και εξελίχθηκαν οι νέες γλώσσες προγραμματισμού  Απλές  Ανεξάρτητες από τον τύπο του υπολογιστή  Με φιλικό σύνολο εντολών Οι γλώσσες αυτές ονομάστηκαν υψηλού επιπέδου.

14 Έστω ότι θέλουμε να προσθέσουμε το περιεχόμενο δύο θέσεων μνήμης και να καταχωρίσουμε τοο αποτέλεσμα σε μία Τρίτη Ένα παράδειγμα 14 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

15 7.3.6 Ιστορία γλωσσών υψηλού επιπέδου 15 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

16 Σχεδιάτηκε από ομάδα της IBM για υπολογισμό αλγεβρικών παραστάσεων. FORTRAN 16 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

17 Έγινε ιδιαίτερα γνωστή, γιατί υλοποίησε αξιόλογες ιδέες όπως ο δομημένος προγραμματισμός ALGOL 17 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

18 Κοινή Γλώσσα Εμπορικού Προσανατολισμού. Σχεδιάστηκε από το Υπουργείο Άμυνας των Η. Π. Α. Οδήγησε στην επινόηση συστημάτων διαχείρισης βάσεων δεδομένων. COBOL (Common Buisiness Oriented Language) 18 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

19 Αναπτύχθηκε ως μια γλώσσα για τη διδασκαλία προγραμματισμού σε φοιτητές. Σημέρα χρησιμοποιείται ως μια κανονική γλώσσα ανάπτυξης εφαρμογών. BASIC 19 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

20 Βασισμένη στην ALGOL με βασικό τομέα εφαρμογής της την προσομοίωση SIMULA 20 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

21 Πεδίο εφαρμογής της η τεχνητή νοημοσύνη. LISP 21 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

22 Έχει παιδαγωγικές προδιαγραφές για την επίλυση προβλημάτων και από μαθητές μικρής ηλικίας. Σημαντικό εργαλείο στην διερεύνηση γραφικών σχημάτων. LOGO 22 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

23 Οι στόχοι σχεδιαμού της επικεντρώθηκαν γύρω από την παροχή ορισμένων δυνατοτήτων που θα οδηγούσαν σε αποδοτικό κώδικα κατά τη μεταγλώττιση. PASCAL 23 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

24 Κατάλληλη για τη συγγραφή λειτουργικών συστημάτων. Το μεγαλύτερο μέρος του συστήματος UNIX γράφτηκε σε C. Χρησιμοποιείται για την ανάπτυξη λειρογυρικών συστημάτων και εφαρμογών. C 24 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

25 Εξέλιξη της C προς την κατεύθυνση του αντικειμενοστραφούς προγραμματισμού. Είναι η γλώσσα που κυριαρχεί στην κατασκευή προγραμμάτων σε παραθυρικά περιβάλλοντα. C++ 25 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

26 Πρόκειται για λειτουργικό σύστημα και ταυτόχρονα για γλώσσα αντικειμενοστρεφούς προγραμματισμού. SMALLTALK 26 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

27 Κατάλληλη για τον προγραμματισμό Ενσωματωμένων Υπολογιστικών Συστημάτων. Οι εφαρμογές αυτές χαρακτηρίζοτναι από μεγάλο μέγεθος και υψηλή πολυπλοκότητα. ADA 27 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

28 Γλώσσα για προγράμματα προσαρμοσμένα στις ανάγκες του παγκόσμιου ιστού και του Διαδικτύου. JAVA 28 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

29 Βασίζεται στη μαθηματική λογική και χρησιμοποιείται όπως και η LISP σε εφαρμογές τεχνητής νοημοσύνης PROLOG 29 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

30 Γλώσσα επικοινωνίας με τις σχεσιακές βάσεις δεδομένων. Πρωτοεμφανίστηκε από την εταιρεία ORACLE. SQL 30 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

31 Γενιές γλωσσών προγραμματισμού Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 31  1 η γενιά | Γλώσσα μηχανής  2 η γενιά | Συμβολικές Γλώσσες  3 η γενιά | Γλώσσες υψηλού επιπέδου  4 η γενιά | Γλώσσες που είναι πιο κοντά στη φυσική γλώσσα απ ’ ότι οι συνήθεις γλώσσες υψηλού επιπέδου ( π. χ. sql)

32 Ραγδαία ανάπτυξη λογισμικού Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 32 Το κόστος ανάπτυξης και το κόστος χρήσης του λογισμικού μειώθηκαν σημαντικά για τους εξής λόγους :  Η εκμάθηση μιας γλώσσας προγραμματισμού έγινε ευκολότερη  Η κατασκευή λογισμικού έγινε απλούστερη  Προγράμματα που έχουν γραφτεί σε γλώσσα υψηλού επιπέδου μπορούν να εκτελεστούν σε υπολογιστές με διαφορετική ΚΜΕ. Η τυποποίηση των διαφόρων γλωσσών γίνετια από το ANSI.

33 7.3.7 Εξάρτηση των γλωσσών από το σκοπό Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 33 Ανάλογα με το σκοπό για τον οποίο αρχικά σχεδιάστηκαν οι διάφορες γλώσσες, χωρίζονται σε ειδικού και γενικού σκοπού. Ειδκικού Σκο π ού •COBOL | ε π ίλυση εμ π ορικών π ροβλημάτων •FORTRAN | ε π ιστημοντικές εφαρμογές •LISP | εφαρμογές τεχνητής νοημοσύνης Γενικού Σκο π ού •C •JAV Α Χρησιμο π οιούνται σε διαφορετικές π εριοχές εφαρμογών με εξίσου καλά α π οτελέσματα

34 7.3.8 Μεταφραστές 34 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα

35 7.3.8 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 35 Τα προγράμματα που είναι γραμμένα σε κάποια γλώσσα υψηλού επιπέδου να « μεταφραστούν » σε γλώσσα μηχανής. Συμβολικές Γλώσσες Συμβολομεταφραστές Γλώσσες υψηλού ε π ι π έδου ΜεταγλωττιστέςΔιερμηνευτές

36 Συμβολομεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 36 Οι εντολές των συμβολικών γλωσσών βρίσκονται σε αντιστοιχία μία προς μία με αυτές της γλώσσας μηχανής. Η μετατροπή των προγραμμάτων από συμβολική γλώσσα σε γλώσσα μηχανής γίνεται από προγράμματα που ονομάζονται συμβολομεταφραστές.

37 Μεταγλωτισστές - Διερμηνευτές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 37 Δύο τρόποι για την εκτέλεση προγραμμάτων που είναι γραμμένα σε γλώσσες υψηλού επιπέδου  Με τη χρήση μεταγωττιστή  Με τη χρήση διερμηνευτή

38 Μεταγλωττιστής Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 38 Διαδικασία  Γραφή του προγράμματος σε γλώσσα υψηλού επιπέδου ( πηγαίο πρόγραμμα ).  Το πηγαίο πρόγραμμα μεταγλωττίζεται σε γλώσσα μηχανής οπότε προκύπτει το αντικείμενο πρόγραμμα. Για να ολοκληρωθεί μεταγλώττιση το πρόγραμμα πρέπει να είναι συνακτικά σωστό γι ’ αυτό ελέγχεται για συνατικά λάθη.  Από το αντικείμενο πρόγραμμα συνήθως λείπει κώδικας κοινής χρήσης ( κώδικας που διαχειρίζεται τις λειτουργίες εισόδου εξόδου ή μαθηματικές συναρτήσεις ). Ο συνδέτης συνδέει το αντικείμενο πρόγραμμα με τα απαραίτητα προγράμματα από τις βιβλιοθήκες και παράγει το αυτόνομο εκτελέσιμο πρόγραμμα που εκτελείται από την ΚΜΕ.

39 Μεταγλώττιση Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 39 Τα βήματα είναι : Συγγραφή Μεταγλώττιση Σύνδεση Εκτέλεση

40 Διερμηνευτής Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 40 Το πρόγραμμα γράφεται με τη βοήθεια κάποιου συντάκτη κειμένου ενσωματωμένου στο διερμηνευτή. Ο διερμηνευτής αναλαμβάνει να εκτελέσει μία μία τις εντολές του προγράμματος. Ο διερμηνευτής δεν μεταγλωττίζει το πρόγραμμα σε γλώσσα μηχανής, αλλά εκτελεί ο ίδιος το πρόγραμμα. Συνήθως ο διερμηνευτής μετασχηματίζει το πρόγραμμά μας σε μια ενδιάμεση μορφή και στη συνέχεια το εκτελεί.


Κατέβασμα ppt "ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΗ Κεφάλαιο 7 ο | 7.1 – 7.38 Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα 1."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google