Περί Προγραμματισμού και Γλωσσών Προγραμματισμού

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Περί Προγραμματισμού και Γλωσσών Προγραμματισμού"

Transcript

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

2 18 Java για όλους γασίες αλλά μπορούν να επεκτείνουν τη χρησιμότητά τους. Η επέκταση αυτή επιτυγχάνεται με την προσθήκη προγραμμάτων. Το ερώτημα που προκύπτει είναι τι είναι αυτά τα προγράμματα και πώς προστίθενται στον ηλεκτρονικό υπολογιστή μας. Πριν απαντήσουμε σε αυτό θα αναφερθούμε στα χειριστήρια και στις συσκευές που διαθέτουν οι ηλεκτρονικοί υπολογιστές και στον τρόπο που λειτουργούν. Τα χειριστήρια των ηλεκτρονικών υπολογιστών διακρίνονται σε δύο είδη: συσκευές εισόδου και συσκευές εξόδου. Με τις συσκευές εισόδου μπορούμε να υποδείξουμε στον ηλεκτρονικό υπολογιστή τι πρέπει να κάνει και να παρέχουμε στον ηλεκτρονικό υπολογιστή τα δεδομένα που απαιτούνται. Με βάση τα μέχρι τώρα παραδείγματα μπορούμε να υποδείξουμε ότι πρέπει να εκδώσει τη μηνιαία μισθοδοσία (δηλαδή να ζητήσουμε να λειτουργήσει ή όπως συνηθίζεται να λέγεται να εκτελέσει το πρόγραμμα μισθοδοσίας). Αν απαιτούνται δεδομένα που δεν διαθέτει ο υπολογιστής τότε αυτά μπορούν να τροφοδοτηθούν στον υπολογιστή και πάλι από τις συσκευές εισόδου. Για παράδειγμα, μπορούμε να τροφοδοτήσουμε τις ώρες που εργάσθηκε υπερωριακά ο κάθε υπάλληλος στη διάρκεια του μήνα για τον οποίο εκδίδεται η μισθοδοσία. Τα μέχρι τώρα παραδείγματά μας είναι σχεδόν βέβαιο ότι παραπέμπουν στο πληκτρολόγιο το οποίο είναι μία συσκευή (κυρίως) για την είσοδο χαρακτήρων και ψηφίων. Μια άλλη τέτοια συσκευή είναι το ποντίκι (mouse). Για την έξοδο αποτελεσμάτων, μπορούμε να αναφέρουμε την οθόνη και τον εκτυπωτή. Υπάρχουν πολλές ακόμα συσκευές για το χειρισμό των ηλεκτρονικών υπολογιστών αλλά δεν θα επεκταθούμε. Αναφέρουμε εντελώς επιγραμματικά την αναγκαιότητα συσκευών διατήρησης πληροφορίας (συνηθίζεται να λέγονται συσκευές αποθήκευσης πληροφορίας). Τέτοιες συσκευές είναι οι μαγνητικοί δίσκοι (σκληροί δίσκοι), οι δισκέτες (εύκαμπτοι μαγνητικοί δίσκοι), τα CD και οι συσκευές flash disk. Στο παράδειγμα του προγράμματος μισθοδοσίας, τα βασικά στοιχεία των υπαλλήλων (όνομα, βασικός μισθός, κλπ) διατηρούνται σε κάποια μονάδα αποθήκευσης πληροφορίας. Κατά την εκτέλεση του προγράμματος μισθοδοσίας, ανακαλούνται από το σκληρό δίσκο τα βασικά στοιχεία του υπαλλήλου (όνομα και βασικός μισθός), συνδυάζονται με τα δεδομένα εισόδου (ώρες υπερωριακής απασχόλησης του υπαλλήλου) και με κατάλληλους υ- πολογισμούς (επεξεργασία) προκύπτει το αποτέλεσμα (ο μισθός που πρέπει να καταβληθεί) το οποίο εμφανίζεται (στην οθόνη) ή εκτυπώνεται (στον εκτυπωτή). Ένα δεύτερο συμπέρασμα προκύπτει από τα παραπάνω. Η λειτουργία των ηλεκτρονικών υπολογιστών βασίζεται στο τρίπτυχο: είσοδος επεξεργασία έξοδος. Αν συνδυάσουμε όλα τα προηγούμενα μπορούμε να

3 Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού 19 συνοψίσουμε σε: οι ηλεκτρονικοί υπολογιστές είναι επεκτεινόμενες ηλεκτρονικές συσκευές που κάθε νέα λειτουργία που αποκτούν καθοδηγείται από ένα πρόγραμμα το οποίο χρησιμοποιεί τις συσκευές εισόδου και εξόδου καθώς και αποθηκευτικές συσκευές προκειμένου να επιτελέσει μια προσαρμοσμένη εκδοχή του βασικού τρίπτυχου και να οδηγήσει στην έκδοση των αποτελεσμάτων. Το λειτουργικό σύστημα είναι ένα ακόμα πρόγραμμα αλλά με ιδιαίτερο ρόλο. Σκοπός του λειτουργικού συστήματος είναι να συνδυάζει και να ελέγχει σε ένα ενιαίο σύνολο όλες τις συσκευές που αναφέραμε καθώς και να αποτελεί το μέσο με τη βοήθεια του οποίου μπορούμε να προσθέτουμε νέα προγράμματα (νέες λειτουργίες) στον ηλεκτρονικό υπολογιστή μας. Τα προγράμματα κατασκευάζονται από ανθρώπους και αποτελούνται από ιδιαίτερα απλοϊκές εντολές που γίνονται σε δυαδικό επίπεδο (βλέπε παρακάτω γλώσσα μηχανής). Όμως επειδή οι απλοϊκές εντολές (π.χ. πρόσθεσε δύο δυαδικούς αριθμούς, ανακάλεσε ένα δυαδικό χαρακτήρα byte από την κύρια μνήμη) θα οδηγούσαν σε τεράστια έκταση προγραμμάτων (δύσκολα σε συντήρηση) επινοήθηκαν οι γλώσσες υψηλού επιπέδου που επιτρέπουν περισσότερο σύνθετες ενέργειες σε μία εντολή. Για παράδειγμα μπορούμε, με μια εντολή να ανακαλέσουμε (από την περιφερειακή μνήμη το σκληρό δίσκο) όλα τα στοιχεία ενός υπαλλήλου, με μια άλλη εντολή να υπολογίσουμε το μισθό του υπαλλήλου (λαμβάνοντας υπόψη βασικό μισθό, ώρες υπερωριακής απασχόλησής του και ωριαία αμοιβή για τις ώρες υπερωρίας) και με μία τρίτη εντολή να εκτυπώσουμε το έντυπο μισθοδοσίας που αφορά τον υπάλληλο. Σε τέτοιες γλώσσες (γλώσσες τρίτης γενιάς) επικεντρώνουμε την προσοχή μας στην επόμενη ενότητα. Γλώσσες προγραμματισμού και εργαλεία ανάπτυξης προγραμμάτων Προκειμένου να γίνει κατανοητή η αναγκαιότητα μιας γλώσσας προγραμματισμού καθώς και να ενταχθεί αυτή στο σύνολο των λειτουργιών (και α- ντίστοιχων εργαλείων) που απαιτούνται για την ανάπτυξη λογισμικού στην πλατφόρμα (υπό την αιγίδα) ενός λειτουργικού συστήματος (όπως είναι το DOS, το Unix, το Linux, κλπ), θα εξετάσουμε ορισμένες σχετικές βασικές έννοιες. Οι έννοιες που θα εξετάσουμε είναι: γλώσσα μηχανής, συμβολική γλώσσα (assembly language), γλώσσα προγραμματισμού υψηλού επιπέδου, πηγαίο πρόγραμμα, object (ή αντικειμενικό) αρχείο, εκτελέσιμο πρόγραμμα,

4 20 Java για όλους συμβολομεταφραστής (assembler), macro-assembler, μεταγλωττιστής (compiler), βιβλιοθήκη (library) και συνδέτης (linker). Γλώσσα μηχανής (machine language) Το σύνολο οδηγιών που αναγνωρίζει και μπορεί να εκτελέσει μία μηχανή (ένας επεξεργαστής) ονομάζεται γλώσσα μηχανής. Κάθε οδηγία συνίσταται από τον κώδικα εντολής (ή λειτουργίας ή πράξης, instruction code) και τους όρους ή τελεστέους (operands) της πράξης. Τόσο ο κώδικας λειτουργίας όσο και οι όροι της πράξης είναι δυαδικοί αριθμοί. Συμβολική γλώσσα (assembly language) Συμβολική γλώσσα είναι μια γλώσσα που χρησιμοποιεί κατάλληλα μνημονικά σύμβολα αντί για δυαδικούς αριθμούς που καταλαβαίνει ο επεξεργαστής του Η/Υ. Ένας στοιχειώδης συμβολομεταφραστής (ή συναρμολογητής assembler) αναλαμβάνει να μετατρέψει (μεταφράσει) τα μνημονικά σύμβολα στους δυαδικούς αριθμούς που καταλαβαίνει ο επεξεργαστής του Η/Υ, δηλαδή μετατρέπει τη συμβολική γλώσσα μηχανής σε γλώσσα μηχανής. Υπάρχουν διάφορα επίπεδα ωρίμανσης των συμβολικών γλωσσών προγραμματισμού. Μπορούμε να συναντήσουμε συμβολικές γλώσσες που χρησιμοποιούν μνημονικά ονόματα του κώδικα εντολής και οκταδική ή δεκαεξαδική αναπαράσταση των θέσεων μνήμης για τα δεδομένα ή τα αποτελέσματα (τελεστέους), συμβολικές γλώσσες που χρησιμοποιούν μνημονικά ονόματα του κώδικα εντολής και δεκαδική αναπαράσταση των τελεστέων αλλά ακόμα και συμβολικές γλώσσες που χρησιμοποιούν μνημονικά ονόματα τόσο για τον κώδικα εντολής, όσο και για τους τελεστέους. Ανεξάρτητα από τα επίπεδα ωρίμανσης, οι εντολές σε μια συμβολική γλώσσα δεν απαλλάσουν τον προγραμματιστή από τον προγραμματισμό σε χαμηλό επίπεδο καθώς δεν παρέχουν «έτοιμες λύσεις» για παραστάσεις και χειρισμό ακεραίων και πραγματικών αριθμών, παραστάσεις και χειρισμό λογικών τιμών. Προφανώς, δεν παρέχουν «έτοιμες λύσεις» για παραστάσεις και χειρισμό πιο σύνθετων τύπων (ακολουθίες χαρακτήρων ή συμβολοσειρές, πίνακες, δομές που ορίζει ο χρήστης). Είναι προφανές από τα παραπάνω ότι τα προγράμματα σε συμβολική γλώσσα μηχανής ήταν απόλυτα συνυφασμένα με τη γλώσσα μηχανής και δεν μπορούσαν να μεταφερθούν σε άλλους Η/Υ, παρά μόνο εάν οι Η/Υ

5 Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού 21 στους οποίους μεταφέρονταν είχαν την ίδια γλώσσα μηχανής (πρακτικά είχαν τον ίδιο επεξεργαστή). Γλώσσα υψηλού επιπέδου Οι γλώσσες υψηλού επιπέδου σχεδιάσθηκαν για να απαλλάξουν τα προγράμματα από τον περιορισμό εξάρτησής τους από τον επεξεργαστή των Η/Υ και επιπλέον για να αυξήσουν την παραγωγικότητα των προγραμματιστών. Για το σκοπό αυτό, οι γλώσσες υψηλού επιπέδου παρέχουν «έτοιμες λύσεις» για παραστάσεις και χειρισμό ακεραίων και πραγματικών αριθμών, παραστάσεις και χειρισμό λογικών τιμών. Παρέχουν «εύκολες λύσεις» για παραστάσεις και χειρισμό συμβολοσειρών, πινάκων και δομές που ορίζει ο χρήστης. Παρέχουν επίσης δομές ελέγχου ροής προγράμματος (υπό συνθήκη εκτέλεση, επαναληπτική εκτέλεση κλπ) και εντολές εισόδου-εξόδου. Ο- ρισμένες από τις γλώσσες υψηλού επιπέδου προσφέρουν μεγαλύτερη (έναντι άλλων γλωσσών) πρόσβαση και αξιοποίηση των λειτουργιών που επιτελεί το σύστημα Η/Υ (permit access to system-level functions). Την ιδιότητα αυτή διαθέτει και η γλώσσα προγραμματισμού C που την παραθέτουμε ως κλασικό παράδειγμα διαδικαστικής γλώσσας υψηλού επιπέδου. Σε επόμενο κεφάλαιο μιλάμε για τον αντικειμενοστρεφή προγραμματισμό. Στον τελευταίο εντάσσονται οι γλώσσες C++, Smalltalk και Java. Η Java είναι η γλώσσα την οποία αναπτύσσουμε σε αυτό το βιβλίο. Παρόλα αυτά στο παρόν κεφάλαιο εστιάζουμε στις διαδικαστικές γλώσσες υψηλού επιπέδου και τα παραδείγματά μας θα είναι σε γλώσσα C. Πηγαίο πρόγραμμα Ένα σύνολο από εντολές που ακολουθούν τους συντακτικούς κανόνες μίας γλώσσας προγραμματισμού (είτε υψηλού επιπέδου, είτε σε συμβολική γλώσσα μηχανής), συνταγμένο (συνήθως) με ένα συντάκτη κειμένου (όπως ο vi που παρέχει το λειτουργικό σύστημα Unix ή όπως το notepad που παρέχει το λειτουργικό σύστημα Windows) και αποθηκευμένο σε ένα αρχείο του λειτουργικού συστήματος, ονομάζεται πηγαίο πρόγραμμα ή απλά πηγαίο. Object αρχείο Ένα σύνολο από εντολές σε γλώσσα μηχανής, αποθηκευμένο σε ένα αρχείο του λειτουργικού συστήματος ονομάζεται object αρχείο. Ένα object αρχείο, παρότι έχει εντολές σε γλώσσα μηχανής την οποία «καταλαβαίνει» ο επεξεργαστής του Η/Υ, δεν μπορεί να εκτελεσθεί από τον Η/Υ γιατί (συνήθως)

6 22 Java για όλους περιέχει εξωτερικές αναφορές (επικλήσεις) λειτουργιών (συνήθως αναφορές στις «έτοιμες λύσεις» που παρέχουν οι γλώσσες υψηλού επιπέδου) των οποίων οι εντολές σε γλώσσα μηχανής είναι αποθηκευμένες σε άλλα αρχεία του λειτουργικού συστήματος (βιβλιοθήκες ή άλλα object αρχεία). Εκτελέσιμο πρόγραμμα Ένα σύνολο από εντολές σε γλώσσα μηχανής, αποθηκευμένο σε ένα αρχείο του λειτουργικού συστήματος, το οποίο είναι «έτοιμο προς εκτέλεση» από τον επεξεργαστή του Η/Υ ονομάζεται εκτελέσιμο αρχείο. Η έκφραση «έτοιμο προς εκτέλεση» υποδηλώνει ότι στο εκτελέσιμο αρχείο έχουν συγκεντρωθεί και διασυνδεθεί κατάλληλα οι αντικειμενικοί κώδικες (γλώσσα μηχανής), τόσο του αρχικού προγράμματος, όσο και των εξωτερικών αναφορών (βιβλιοθήκες, κλπ). Συμβολομεταφραστής (assembler) Ένα εργαλείο (εκτελέσιμο πρόγραμμα) που μεταφράζει ένα πηγαίο από συμβολική γλώσσα σε γλώσσα μηχανής, ονομάζεται συμβολομεταφραστής (assembler). Macro-assembler Πολλοί συμβολομεταφραστές (assemblers) υποστηρίζουν μακροεντολές (macros), δηλαδή σύμβολα που ορίζονται από τον προγραμματιστή και α- ντιστοιχούν σε (ονοματίζουν και προσδιορίζουν) μια σειρά από γραμμές εντολών στη συμβολική γλώσσα μηχανής. Αυτοί οι συμβολομεταφραστές ονομάζονται και μάκρο-συμβολομεταφραστές (macro-assemblers). Οι μακροεντολές επίσης μπορεί να αντιστοιχούν σε μια ακολουθία από δεδομένα (που βρίσκονται μέσα στο πηγαίο). Μετά τη δήλωση μιας μακροεντολής (με τη χρήση της κατάλληλης ψευδολειτουργίας), το όνομά της μπορεί να χρησιμοποιείται αντί μιας πραγματικής εντολής της συμβολικής γλώσσας. Οταν ο assembler επεξεργάζεται μια τέτοια εντολή, την αντικαθιστά με το σύνολο των εντολών, στη συμβολική γλώσσα, τις οποίες η μακροεντολή προσδιορίζει. Με τον τρόπο αυτό προγράμματα σε συμβολική γλώσσα (assembly language programs) μοιάζουν να είναι πολύ μικρότερα (απαιτούν λιγότερες γραμμές πηγαίου κώδικα όπως γίνεται με τις γλώσσες υψηλού επιπέδου). Αρκετοί macro-assemblers επιτρέπουν επίσης τη δήλωση σύνθετων δομών δεδομένων. Ορισμένοι επίσης, παρέχουν προκαθορισμένες μακροεντολές (macros) για την κλήση λειτουργιών του συστήματος (system calls).

7 Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού 23 Compiler (μεταγλωττιστής) Ένα εργαλείο (εκτελέσιμο πρόγραμμα) που μεταφράζει ένα πηγαίο πρόγραμμα από κάποια γλώσσα υψηλού επιπέδου σε γλώσσα μηχανής (object code), για να συνδεθεί στη συνέχεια με βιβλιοθήκες (που επιλύουν τις εξωτερικές αναφορές) και να γίνει εκτελέσιμο, ονομάζεται μεταγλωττιστής (compiler). Στην απλούστερη μορφή του, ένας μεταγλωττιστής ολοκληρώνει το έργο του με την παραγωγή του object file. Στην πραγματικότητα, οι περισσότεροι μεταγλωττιστές, παρέχουν και τις υπόλοιπες ενέργειες (βήματα) μέχρι τη δημιουργία του τελικού εκτελέσιμου αρχείου. Δηλαδή, πέρα από τη μετάφραση του πηγαίου προγράμματος σε object file εκτελούν και τα βήματα του φορτωτή (linker ή library loader, εξετάζεται παρακάτω). Βιβλιοθήκη (library) Βιβλιοθήκη (library) είναι μια συλλογή υποπρογραμμάτων (ή λειτουργιών επιμέρους ενεργειών που εκτελούνται σε ένα πρόγραμμα) που μπορούν να χρησιμοποιηθούν από άλλα προγράμματα. Υπάρχουν δύο τύποι από βιβλιοθήκες: πηγαίου κώδικα και αντικειμενικού (object) κώδικα. Οι βιβλιοθήκες πηγαίου κώδικα είναι συλλογές από αρχεία, όπου κάθε αρχείο είναι (συνήθως) ένα μικρό πρόγραμμα. Με τη βοήθεια ενός συντάκτη (γνωστού και ως εκδότη) κειμένου (όπως ο vi στο Unix ή όπως το notepad στα Windows) μπορούμε να ενσωματώσουμε (άμεσα ή έμμεσα) ένα πηγαίο αρχείο στο δικό μας πηγαίο πρόγραμμα. Αυτή είναι μία απλή αλλά, σε κάποιες περιπτώσεις, επιβαρυντική αντιμετώπιση. Οι βιβλιοθήκες αντικειμενικού κώδικα (object libraries) είναι συλλογές από μεταγλωττισμένα υποπρογράμματα τα οποία μπορούν να συνδεθούν με άλλα προγράμματα. Οι εξωτερικές αναφορές ενός προγράμματος στις μεταγλωττισμένες λειτουργίες προγραμμάτων (που βρίσκονται στις βιβλιοθήκες) επιλύονται από τους linkers (ή library loaders ή link editors) που εξετάζονται στη συνέχεια. Μπορούμε να πούμε ότι οι βιβλιοθήκες αντικειμενικού (object) κώδικα είναι περισσότερο αξιόπιστες λύσεις για την επαναχρησιμοποίηση κώδικα, σε σχέση με τις βιβλιοθήκες πηγαίου κώδικα. Συνδέτης (linker, library loader, link editor) Συνδέτης (linker) ονομάζεται ένα εργαλείο (εκτελέσιμο πρόγραμμα) που μας επιτρέπει να συνδέσουμε (ενοποιήσουμε) σε ένα εκτελέσιμο αρχείο, τόσο τον δικό μας αντικειμενικό κώδικα (αυτόν που προέρχεται από τη μεταγλώττιση του δικού μας πηγαίου προγράμματος), όσο και τον αντικειμε-

8 24 Java για όλους νικό κώδικα που εξυπηρετεί (ανταποκρίνεται) στις εξωτερικές αναφορές που κάνει το δικό μας πρόγραμμα. Συνοπτικά, ο συνδέτης είναι ένα εργαλείο που παράγει το εκτελέσιμο πρόγραμμα. Ο κώδικας που εξυπηρετεί τις εξωτερικές αναφορές του προγράμματός μπορεί να ευρίσκεται σε αλλα α- ντικειμενικά (object) αρχεία ή σε βιβλιοθήκες (object libraries). Το εργαλείο αυτό ονομάζεται επίσης library loader και link editor. Στο λειτουργικό σύστημα Unix παρέχεται το εργαλείο ld, το οποίο συνδυάζει μετατοπίσημα αντικειμενικά αρχεία (relocatable object files), εκτελεί τη μετατόπισή τους (performs relocation) και επιλύει τις εξωτερικές αναφορές (resolves external symbols). Παραδείγματα χρήσης μεταγλωττιστή και linker στο Unix Το πρώτο μας παράδειγμα χρησιμοποιεί τον προκαθορισμένο μεταγλωττιστή της γλώσσας C για να δημιουργήσει αρχικά το αντικειμενικό αρχείο (first.o) και στη συνέχεια (με τη βοήθεια της εντολής ld) να το συνδέσει με τη runtime βιβλιοθήκη της C (που βρίσκεται στο object αρχείο /lib/crt0.o) και τη standard βιβλιοθήκη της C (που βρίσκεται στο object αρχείο /lib/libc.a). Το αποτέλεσμα αποθηκεύεται στο εκτελέσιμο αρχείο first (χωρίς κατάληξη): % cc c first.c % ld o first /lib/crt0.o first.o lc Το επόμενο παράδειγμα επιτυγχάνει το ίδιο ακριβώς αποτέλεσμα, με τη βοήθεια του μεταγλωττιστή αλλά και της εντολής mv που παρέχει το λειτουργικό σύστημα. Η πρώτη εντολή παράγει το εκτελέσιμο αρχείο με όνομα a.out (το οποίο είναι το προκαθορισμένο όνομα εκτελέσιμου που δημιουργεί ο μεταγλωττιστής cc). Η δεύτερη εντολή μετονομάζει το αρχείο a.out σε first (χωρίς κατάληξη): % cc first first.c % mv a.out first Η επόμενη εντολή επιτυγχάνει το ίδιο ακριβώς αποτέλεσμα με τη χρήση των επιπρόσθετων δυνατοτήτων φορτώματος (loading) που παρέχει ο μεταγλωτιστής: % cc -o first first.c

9 Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού 25 Το επόμενο παράδειγμα χρησιμοποιεί σε βήματα (σε δύο εντολές) τον GNU C μεταγλωττιστή για να δημιουργήσει το εκτελέσιμο πρόγραμμα hello (χωρίς κατάληξη) από το πηγαίο hello.c: % gcc -c hello.c % gcc hello.o -o hello Η επόμενη εντολή δημιουργεί το εκτελέσιμο αρχείο myprogram (χωρίς κατάληξη), με τη χρήση του προκαθορισμένου μεταγλωττιστή της γλώσσας C. Στην εντολή αυτή συνδυάζεται το αντικειμενικό μας πρόγραμμα (myprogram.o, που έχει δημιουργηθεί σε κάποιο προγενέστερο βήμα), η runtime βιβλιοθήκη της C (/lib/crt0.o, αυτόματα από την εντολή cc), η standard βιβλιοθήκη της C (/lib/libc.a, αυτόματα από την εντολή cc) και οι βιβλιοθήκες /lib/libmylib.a /lib/libx11.a (που προσδιορίζονται από το χρήστη): % cc -o myprogram myprogram.o -lmylib -lx11 Παράδειγμα χρήσης μεταγλωττιστή και linker στο DOS Το πρώτο μας παράδειγμα στο DOS χρησιμοποιεί το μεταγλωττιστή της Turbo C (tcc) για να δημιουργήσει αρχικά το αντικειμενικό αρχείο (first.obj) και στη συνέχεια (με τη βοήθεια του Turbo Linker, tlink) να το συνδέσει με object αρχείο lib/c0s.obj και τη βιβλιοθήκη lib/cs.lib. Το αποτέλεσμα αποθηκεύεται στο εκτελέσιμο αρχείο first.exe: C:\TC>tcc -ms -c -ofirst.obj first.c C:\TC>tlink /x first.obj lib\c0s.obj, first.exe,, lib\cs.lib Η επόμενη εντολή επιτυγχάνει το ίδιο ακριβώς αποτέλεσμα, με τη χρήση των επιπρόσθετων δυνατοτήτων φορτώματος (loading) που παρέχει ο μεταγλωτιστής της Turbo C (tcc): C:\TC>tcc first.c Ένα ολοκληρωμένο παράδειγμα Δημιουργούμε (π.χ. με το notepad) ένα αρχείο κειμένου με όνομα trapezio.c και το επόμενο περιεχόμενο: 1. #include <stdio.h>

10 26 Java για όλους 2. main () { 3. float mikri_vasi; 4. float megali_vasi; 5. float ypsos; 6. float emvado; mikri_vasi = 40.0; 9. megali_vasi = 50.0; 10. ypsos = 29.5; emvado = ((mikri_vasi + megali_vasi) / 2.0) * ypsos; printf( Το εμβαδό του τραπεζίου είναι %g\n, emvado); 15. } Μεταγλωττίζουμε: C:\TC>tcc trapezio.c Εκτελούμε:

Κεφάλαιο 2: Μεταφραστές

Κεφάλαιο 2: Μεταφραστές Κεφάλαιο 2: Μεταφραστές Αρχές Γλωσσών και Προγραμματισμού Λειτουργία Μετάφρασης ΑΡΧΙΚΗ ΓΛΩΣΣΑ (Source) L A ΓΛΩΣΣΑ ΥΛΟΠΟΙΗΣΗΣ ΜΕΤΑΦΡΑΣΤΗ (Implementation) L Y ΤΕΛΙΚΗ ΓΛΩΣΣΑ (Target) L T Αρχικό Πρόγραμμα

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

Γλώσσες Προγραμματισμού Μεταγλωττιστές

Γλώσσες Προγραμματισμού Μεταγλωττιστές Γλώσσες Προγραμματισμού Μεταγλωττιστές Πανεπιστήμιο Μακεδονίας Τμήμα Εφαρμοσμένης Πληροφορικής Ηλίας Σακελλαρίου Δομή Γλώσσες Προγραμματισμού Εισαγωγικά Γλώσσα Μηχανής Γλώσσες υψηλού επιπέδου Μεταγλωττιστές

Διαβάστε περισσότερα

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Βιβλιογραφία "C Προγραμματισμός", Deitel & Deitel, Πέμπτη Έκδοση, Εκδόσεις

Διαβάστε περισσότερα

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ Κεφάλαιο 6 ο Με τι ασχολείται ο προγραμματισμός; Ο προγραμματισμός ασχολείται με την διατύπωση του αλγορίθμου σε κατανοητή μορφή από τον Η/Υ, δηλ. τη δημιουργία του προγράμματος, του συνόλου των εντολών που πρέπει

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό

ΚΕΦΑΛΑΙΟ VI. Εισαγωγή στον προγραμματισμό ΚΕΦΑΛΑΙΟ VI Η επίλυση ενός προβλήματος με τον υπολογιστή περιλαμβάνει, όπως έχει ήδη αναφερθεί, τρία εξίσου σημαντικά στάδια. Τον ακριβή προσδιορισμό του προβλήματος. Την ανάπτυξη του αντίστοιχου αλγορίθμου.

Διαβάστε περισσότερα

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση Αρης Ευθυμίου Ανακοινώσεις! Βαθμοί: 1ης εργαστηριακής άσκησης Βαθμός 0 χωρίς σχόλια δεν έχω πάρει την άσκηση! ελέγξτε μήπως δεν το στέλνετε στο σωστό

Διαβάστε περισσότερα

ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ

ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΤΙ ΕΙΝΑΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ Ο όρος είναι συντομογραφία του όρου «Αυτόματος, Ηλεκτρονικός Ψηφιακός Υπολογιστής Γενικού Σκοπού» [1]. Αυτόματος Μετά την έναρξη της λειτουργίας του εργάζεται μόνος του εκτελώντας

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Εισαγωγή στην FORTRAN. Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στην FORTRAN Δρ. Ιωάννης Λυχναρόπουλος 2014-2015 Fortran FORmula TRANslation: (Μία από τις πρώτες γλώσσες τρίτης γενιάς) Εκδόσεις FORTRAN (1957) FORTRAN II (1958) FORTRAN III

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ενότητα 1 - Εισαγωγή Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Στόχοι Μαθήματος H ανάπτυξη ικανοτήτων και η απόκτηση

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΔΟΜΗΜΕΝΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Εισαγωγή Κώστας Στεργίου Τι είναι ο Η/Υ; Ένας ηλεκτρονικός υπολογιστής (Η/Υ) είναι

Διαβάστε περισσότερα

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C

ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΣΚΗΣΕΙΣ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΡΩΤΗΣΕΙΣ ΣΩΣΤΟ ΛΑΘΟΣ Σημειώστε αν είναι σωστή ή

Διαβάστε περισσότερα

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον

Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Κεφάλαιο 6ο Εισαγωγή στον Προγραµµατισµό Μέρος Πρώτο (6.1, 6.2 και 6.3) Α. Ερωτήσεις Σωστού Λάθους 1. Η γλώσσα µηχανής είναι µία γλώσσα υψηλού επιπέδου.

Διαβάστε περισσότερα

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Μ Ε Ρ Ο Σ Γ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Γλώσσες Προγραμματισμού 6.1.1 Γλώσσες μηχανής (1 η γενιά) Η γλώσσα στην οποία ένας ηλεκτρονικός υπολογιστής καταλαβαίνει

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

Διαβάστε περισσότερα

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System)

Λειτουργικά Συστήματα Κεφάλαιο 2 Οργάνωση Συστήματος Αρχείων 2.1 Διαχείριση Αρχείων και Σύστημα Αρχείων(File System) 2.1.1 Εισαγωγή στη διαχείριση αρχείων Οι Η/Υ αποθηκεύουν τα δεδομένα και τα επεξεργάζονται. Εφαρμογή Προγράμματος C:\Documents and Settings\user\Τα έγγραφά μου\leitourgika.doc Λ.Σ. File System Γι αυτό

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 1: Εισαγωγή στη C - Αλγόριθμοι Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

Διαβάστε περισσότερα

Μεταφραστής (Compiler)

Μεταφραστής (Compiler) Windows Καθαρισµος οθονης cls Unix clear Τελεστες ανακατευθυνσης > > >> >> < < Εντολες σε αρχεια * * (wild card) del Α rm Α ιαγραφη type Α cat Α Εµφανιση copy Α Β cp Α Β Αντιγραφη ren Α Β mv Α Β Αλλαγη

Διαβάστε περισσότερα

Δυαδικό Σύστημα Αρίθμησης

Δυαδικό Σύστημα Αρίθμησης Δυαδικό Σύστημα Αρίθμησης Το δυαδικό σύστημα αρίθμησης χρησιμοποιεί δύο ψηφία. Το 0 και το 1. Τα ψηφία ενός αριθμού στο δυαδικό σύστημα αρίθμησης αντιστοιχίζονται σε δυνάμεις του 2. Μονάδες, δυάδες, τετράδες,

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης

ΚΕΦΑΛΑΙΟ 1ο 3ο. ΚΕΦΑΛΑΙΟ 5ο 6ο. ΚΕΦΑΛΑΙΟ 7ο. Δομημένος Προγραμματισμός - Γενικές Ασκήσεις Επανάληψης ΚΕΦΑΛΑΙΟ 1ο 3ο 1. Συμπληρώστε τα κενά με τη λέξη που λείπει. α. Ένα πρόβλημα το χωρίζουμε σε άλλα απλούστερα, όταν είναι ή όταν έχει τρόπο επίλυσης. β. Η επίλυση ενός προβλήματος προϋποθέτει την του. γ.

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C Ιανουάριος 2013 Τι είναι ένα πρόγραμμα; Πρόγραμμα είναι μία σειρά από οδηγίες που δίνουμε στον υπολογιστή προκειμένου αυτός να κάνει κάποια συγκεκριμένη εργασία Πώς

Διαβάστε περισσότερα

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

Διαβάστε περισσότερα

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Βασικές Έννοιες Προγραμματισμού Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD Αριθμητικά συστήματα Υπάρχουν 10 τύποι ανθρώπων: Αυτοί

Διαβάστε περισσότερα

Υλοποίηση ενός προγραμματιστικού κελύφους εργασίας

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

Διαβάστε περισσότερα

Κεφάλαιο 2.1-2.4: Εισαγωγή στην C. ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο 2.1-2.4: Εισαγωγή στην C. ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 2.1-2.4: Εισαγωγή στην C ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγή στην C: Σύνταξη και Σηµασιολογία σχόλια µεταβλητές και σταθερές τύποι δεδοµένων Μετά αυτές τις δυο διαλέξεις

Διαβάστε περισσότερα

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα;

III. Πως μετατρέπεται το πηγαίο πρόγραμμα σε εκτελέσιμο πρόγραμμα; ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΙΑΓΩΝΙΣΜΑ ΟΝΟΜΑΤΕΠΩΝΥΜΟ: Θέμα 1ο I. Τι πρέπει να ικανοποιεί ένα κομμάτι κώδικα ώστε να χαρακτηριστεί ως υποπρόγραμμα; Τα υποπρογράμματα πρέπει

Διαβάστε περισσότερα

Παράλληλη Επεξεργασία

Παράλληλη Επεξεργασία Παράλληλη Επεξεργασία Φροντιστήριο: Εισαγωγή στο OpenMP Εργαστήριο Πληροφοριακών Συστημάτων Υψηλής Επίδοσης Parallel and Distributed Systems Group Τι είναι το OpenMP Πρότυπο Επέκταση στη C/C++ και τη Fortran

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β Καβακλή Χειμερινό Εξάμηνο 2001 Στόχοι του Μαθήματος! Ανάπτυξη αναλυτικής

Διαβάστε περισσότερα

Β2.1 Βασικές έννοιες της Αρχιτεκτονικής του Η/Υ

Β2.1 Βασικές έννοιες της Αρχιτεκτονικής του Η/Υ Β2.1 Βασικές έννοιες της Αρχιτεκτονικής του Η/Υ Τι θα μάθουμε σήμερα: Να αναφέρουμε και να εξηγούμε τι είναι Αρχιτεκτονική Η/Υ Να γνωρίσουμε τα βασικά εξαρτήματα που βρίσκονται στο εσωτερικό του υπολογιστή

Διαβάστε περισσότερα

Tο περιβάλλον Code::Blocks

Tο περιβάλλον Code::Blocks Tο περιβάλλον Code::Blocks Το Code::Blocks αποτελεί ένα πλήρες περιβάλλον ανάπτυξης εφαρμογών για την γλώσσα C και C++. Το περιβάλλον είναι ελεύθερο λογισμικό και χρησιμοποιεί μια ειδική έκδοση του μεταγλωττιστή

Διαβάστε περισσότερα

Το mic1 διανέμεται με τους όρους της GNU General Public License. Ο πηγαίος κώδικας περιέχεται στην έκδοση.

Το mic1 διανέμεται με τους όρους της GNU General Public License. Ο πηγαίος κώδικας περιέχεται στην έκδοση. MIC-1 Simulator Ο εξομοιωτής, βασισμένος στην JAVA, ονομάζεται mic1 και υλοποιεί την αρχιτεκτονική Mic-1 που περιγράφεται στο κεφάλαιο 4 του βιβλίου του A. S. Tanenbaum, Structured Computer Organization,

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 7 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ

ΜΑΘΗΜΑ 7 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ ΜΑΘΗΜΑ 7 - ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΗΣ ΕΠΙΛΟΓΗΣ 1. Ποια από τις πιο κάτω δηλώσεις περιγράφει την σωστή διαδικασία ασφάλειας των πληροφοριών για ένα οργανισμό; a) Να μην υπάρχουν διαδικασίες για την αναφορά των

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 2. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 2. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30 ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 1.1 Τι είναι Πληροφορική;...11 1.1.1 Τι είναι η Πληροφορική;...12 1.1.2 Τι είναι ο Υπολογιστής;...14 1.1.3 Τι είναι το Υλικό και το

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Το Υλικό των Η/Υ. ΗΜ/ΝΙΑ : 29/10/-2/11/2001 ΤΜΗΜΑ : Επιµορφούµενοι καθηγητές Πληρ/κής. Γυµνάσιο Τάξη Β :

ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Το Υλικό των Η/Υ. ΗΜ/ΝΙΑ : 29/10/-2/11/2001 ΤΜΗΜΑ : Επιµορφούµενοι καθηγητές Πληρ/κής. Γυµνάσιο Τάξη Β : ΤΙΤΛΟΣ ΜΑΘΗΜΑΤΟΣ: Το Υλικό των Η/Υ ΗΜ/ΝΙΑ : 29/10/-2/11/2001 ΤΜΗΜΑ : Επιµορφούµενοι καθηγητές Πληρ/κής. Γυµνάσιο Τάξη Α : Τάξη Β : Εν. Λύκειο : 1) Το υλικό ενός υπολογιστικού συστήµατος 2) Το υπολογιστικό

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No 05 Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και

Διαβάστε περισσότερα

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

ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 (Α) Σημειώστε δίπλα σε κάθε πρόταση «Σ» ή «Λ» εφόσον είναι σωστή ή λανθασμένη αντίστοιχα. 1. Τα συντακτικά λάθη ενός προγράμματος

Διαβάστε περισσότερα

ΤΟ ΕΣΩΤΕΡΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

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

Διαβάστε περισσότερα

ΜΕΘΟΔΟΛΟΓΙΑ ΑΝΑΠΤΥΞΗΣ ΕΜΠΟΡΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

ΜΕΘΟΔΟΛΟΓΙΑ ΑΝΑΠΤΥΞΗΣ ΕΜΠΟΡΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Μεθοδολογία Ανάπτυξης Εμπορικών Εφαρμογών 1 ΜΕΘΟΔΟΛΟΓΙΑ ΑΝΑΠΤΥΞΗΣ ΕΜΠΟΡΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Η μεθοδολογία ανάπτυξης μιας εμπορικής εφαρμογής δίνει την δυνατότητα στην ομάδα εργασίας να έχει τον πλήρη έλεγχο

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++

ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ & ΧΡΗΣΗΣ ΟΛΟΚΛΗΡΩΜΕΝΟΥ ΠΕΡΙΒΑΛΛΟΝΤΟΣ ΑΝΑΠΤΥΞΗΣ BloodShed Dev-C++ Α. ΠΡΙΝ ΤΗΝ ΕΓΚΑΤΑΣΤΑΣΗ Το πρόγραμμα BloodShed Dev-C++ είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης* κώδικα για γλώσσες

Διαβάστε περισσότερα

Εισαγωγή. Κεφάλαιο 1. 1.1 Γλωσσικοί Επεξεργαστές

Εισαγωγή. Κεφάλαιο 1. 1.1 Γλωσσικοί Επεξεργαστές Κεφάλαιο 1 Εισαγωγή Οι γλώσσες προγραμματισμού είναι σημειογραφίες που περιγράφουν υπολογισμούς στους ανθρώπους και στις μηχανές. Ο κόσμος όπως τον γνωρίζουμε, εξαρτάται από τις γλώσσες προγραμματισμού,

Διαβάστε περισσότερα

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος 2007-2008

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής. Ακαδημαϊκό Έτος 2007-2008 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Ακαδημαϊκό Έτος 2007-2008 ΠΑΡΑΔΟΤΕΟ: Έκθεση Προόδου Υλοποίησης του Μαθήματος Εισαγωγή στην Επιστήμη των Υπολογιστών Διδάσκοντες: Θ.Ανδρόνικος - Μ.Στεφανιδάκης Περιεχόμενα

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE)

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE) ΣΤΟΧΟΙ: 1. Λογισμικό 2. Λογισμικό Λειτουργικού Συστήματος 3. Προσαρμοστικό Γραφικών Χρήστη 4. Λογισμικών Εφαρμογών 5. Διαφορά Μεταξύ Λογισμικού Λειτουργικού Συστήματος Και

Διαβάστε περισσότερα

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών

Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να αναπτύξουν ένα πρόγραμμα όπου θα επαναλάβουν τα βήματα ανάπτυξης μιας παραθυρικής εφαρμογής.

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

[2] Υπολογιστικά συστήματα: Στρώματα. Τύποι δεδομένων. Μπιτ. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό

[2] Υπολογιστικά συστήματα: Στρώματα. Τύποι δεδομένων. Μπιτ. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό Υπολογιστικά συστήματα: Στρώματα 1 ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Αναπαράσταση δεδομένων 2 Τύποι δεδομένων Τα δεδομένα

Διαβάστε περισσότερα

Εντολές γλώσσας μηχανής

Εντολές γλώσσας μηχανής Εντολές γλώσσας μηχανής Στον υπολογιστή MIPS η εντολή πρόσθεσε τα περιεχόμενα των καταχωρητών 17 και 20 και τοποθέτησε το αποτέλεσμα στον καταχωρητή 9 έχει την μορφή: 00000010001101000100100000100000 Πεδία

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ kv@hua.gr Στόχος Μαθήματος Εισαγωγή σε Βασικούς Όρους Πληροφορικής και Τηλεματικής. Εφαρμογές Τηλεματικής. Αναφορά στις κοινωνικές επιπτώσεις των Υπολογιστών.

Διαβάστε περισσότερα

Το Υλικό Μέρος του Υπολογιστή

Το Υλικό Μέρος του Υπολογιστή 1 Το Υλικό Μέρος του Υπολογιστή Ο υπολογιστής, όπως μπορείτε να παρατηρήσετε στο εργαστήριο του σχολείου σας, περιλαμβάνει διάφορα ξεχωριστά τμήματα που συνδέονται και συνεργάζονται μεταξύ τους, ώστε να

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β.

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Διδάσκουσα Δρ Β. ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β. Καβακλή Χειμερινό Εξάμηνο 2001 1 Σύνολο χαρακτήρων της Pascal Για

Διαβάστε περισσότερα

Το «κλειστό» σύστημα. Ανοικτές επικοινωνίες... Εισαγωγή στην Τεχνολογία της Πληροφορικής. Εισαγωγή στην τεχνολογία της πληροφορικής

Το «κλειστό» σύστημα. Ανοικτές επικοινωνίες... Εισαγωγή στην Τεχνολογία της Πληροφορικής. Εισαγωγή στην τεχνολογία της πληροφορικής ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Εισαγωγή στην Τεχνολογία της Πληροφορικής ΓΙΩΡΓΟΣ Ν. ΓΙΑΝΝΟΠΟΥΛΟΣ Λέκτορας στο Πανεπιστήμιο Αθηνών gyannop@law.uoa.gr Το «κλειστό» σύστημα ΕΙΣΟΔΟΣ ΕΠΕΞΕΡΓΑΣΙΑ

Διαβάστε περισσότερα

Information Technology for Business

Information Technology for Business Information Technology for Business Lecturer: N. Kyritsis, MBA, Ph.D. Candidate e-mail: kyritsis@ist.edu.gr Computer System Hardware Υποδομή του Information Technology Υλικό Υπολογιστών (Hardware) Λογισμικό

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ) 2007 ΕΚΦΩΝΗΣΕΙΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ) 2007 ΕΚΦΩΝΗΣΕΙΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Γ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ (ΚΥΚΛΟΥ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΥΠΗΡΕΣΙΩΝ) 2007 ΘΕΜΑ 1ο ΕΚΦΩΝΗΣΕΙΣ Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις

Διαβάστε περισσότερα

Εισαγωγή στην πληροφορική

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 2: Βασικές αρχές λειτουργίας και χρήσης του υπολογιστή Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών. Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υλικό Υπολογιστών Κεφάλαιο 5ο Οργάνωση υπολογιστών 1 Οργάνωση υπολογιστών ΚΜΕ Κύρια Μνήμη Υποσύστημα εισόδου/εξόδου 2 Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) R1 R2 ΑΛΜ

Διαβάστε περισσότερα

MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2

MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2 MULTIPLE CHOICE REVISION: ΜΑΘΗΜΑ 1-2 1. Ποιος τύπος Η/Υ χρησιμοποιείται για την λειτουργία συστημάτων και βάσεων δεδομένων μεγάλων εταιρειών; a) Επιτραπέζιος Η/Υ b) Προσωπικός Ψηφιακός Βοηθός c) Μεγάλο

Διαβάστε περισσότερα

Περιεχόμενα. Λίγα λόγια για αυτή την έκδοση... 23

Περιεχόμενα. Λίγα λόγια για αυτή την έκδοση... 23 Περιεχόμενα Λίγα λόγια για αυτή την έκδοση...... 23 Κεφάλαιο 1 Εισαγωγή... 25 O στόχος του βιβλίου και σε ποιους απευθύνεται... 27 Πώς να διαβάσετε αυτό το βιβλίο... 27 Εκπαίδευση από απόσταση... 29 Ιστορική

Διαβάστε περισσότερα

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008 Παράδειγμα: Μηχανή για Εισιτήρια 2 Ορισμός Κλάσεων Σύνταξη κλάσης: πεδία, κατασκευαστές, μέθοδοι Ένας αυτόματος εκδότης εισιτηρίων είναι μια μηχανή που δέχεται χρήματα και εκδίδει ένα εισιτήριο. Εκδίδει

Διαβάστε περισσότερα

ΠΕΡΙΓΡΑΜΜΑ ΑΝΑΛΥΤΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ Β ή Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ ΕΝΔΙΑΦΕΡΟΝΤΟΣ: ΠΛΗΡΟΦΟΡΙΚΗ Ι

ΠΕΡΙΓΡΑΜΜΑ ΑΝΑΛΥΤΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ Β ή Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ ΕΝΔΙΑΦΕΡΟΝΤΟΣ: ΠΛΗΡΟΦΟΡΙΚΗ Ι Σεπτέμβριος 007 ΠΕΡΙΓΡΑΜΜΑ ΑΝΑΛΥΤΙΚΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ Β ή Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΜΑΘΗΜΑ ΕΝΔΙΑΦΕΡΟΝΤΟΣ: ΠΛΗΡΟΦΟΡΙΚΗ Ι Περίγραμμα Ενότητα-Κεφάλαιο Δ.Π.(*). Λογισμικό Εφαρμογών 9. Εφαρμογές Διαδικτύου 3. Επεξεργαστής

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 3 MULTIPLE CHOICE

ΜΑΘΗΜΑ 3 MULTIPLE CHOICE ΜΑΘΗΜΑ 3 MULTIPLE CHOICE 1. Ποιa από τις πιο κάτω εργασίες είναι λειτουργία του Λειτουργικού Συστήματος; a) Προσθήκη δεδομένων σε ένα υπολογιστικό φύλλο b) Εκπόνηση έκθεσης βάσης δεδομένων c) Διαχείριση

Διαβάστε περισσότερα

Διάλεξη 1: Αντικειμενοστρεφής Προγραμματισμός -Εισαγωγή. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 1: Αντικειμενοστρεφής Προγραμματισμός -Εισαγωγή. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 1: Αντικειμενοστρεφής Προγραμματισμός -Εισαγωγή Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Γλώσσες Προγραμματισμού - Μεταγλώττιση και Διερμηνεία -Η πλατφόρμα

Διαβάστε περισσότερα

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 Απόδοση των οδηγών αποθηκευτικών µέσων Μέσος χρόνος πρόσβασης (Average Access Time) Ταχύτητα µεταφοράς δεδοµένων (Data-Transfer

Διαβάστε περισσότερα

ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ : Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ : ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ

ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ : Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ : ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΣΧΕΔΙΟ ΜΑΘΗΜΑΤΟΣ ΜΑΘΗΜΑ ΤΑΞΗ ΚΕΦΑΛΑΙΟ 2 ο ΕΙΣΗΓΗΤΗΣ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ : Γ ΕΝΙΑΙΟΥ ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ : ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ : ΚΑΖΑΝΤΖΗΣ ΧΡΗΣΤΟΣ 1. Γενικός

Διαβάστε περισσότερα

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

ΕΠΙΜΟΡΦΩΣΗ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΓΙΑ ΤΑ ΝΕΑ ΑΝΑΛΥΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΝΕΟ ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ Γ ΓΥΜΝΑΣΙΟΥ ΕΠΙΜΟΡΦΩΣΗ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΜΕΣΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΓΙΑ ΤΑ ΝΕΑ ΑΝΑΛΥΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΝΕΟ ΑΝΑΛΥΤΙΚΟ ΠΡΟΓΡΑΜΜΑ Γ ΓΥΜΝΑΣΙΟΥ Νέα Αναλυτικά Προγράμματα Πληροφορικής και Επιστήμης Ηλεκτρονικών Υπολογιστών Πηγή: Οδηγός

Διαβάστε περισσότερα

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

Διαβάστε περισσότερα

2.1 Windows XP. 2.2 Επιφάνεια εργασίας. 2.3 Γραμμή εργασιών 1/10

2.1 Windows XP. 2.2 Επιφάνεια εργασίας. 2.3 Γραμμή εργασιών 1/10 2.1 Windows XP 1. Τι είναι τα Windows XP; 2. Τι εννοούμε με τον όρο λειτουργικό σύστημα; 3. Αναφέρετε μερικά άλλα λειτουργικά συστήματα που κυκλοφορούν στην αγορά. 4. Αναφέρετε μερικά από τα βοηθητικά

Διαβάστε περισσότερα

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία Το 1944 με την κατασκευή του υπολογιστή Mark I από τον Howard Aiken και την εταιρεία κατασκευής ηλεκτρονικών υπολογιστών IBM και από το 1950 μπήκανε

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

Λίγα λόγια από το συγγραφέα... 7. 91 Βάσεις δεδομένων και Microsoft Access... 9. 92 Microsoft Access... 22

Λίγα λόγια από το συγγραφέα... 7. 91 Βάσεις δεδομένων και Microsoft Access... 9. 92 Microsoft Access... 22 ΕΝΟΤΗΤΑ 5 Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 91 Βάσεις δεδομένων και Microsoft Access... 9 92 Microsoft Access... 22 93 Το σύστημα Βοήθειας του Microsoft Office... 32 94 Σχεδιασμός βάσης δεδομένων

Διαβάστε περισσότερα

ΣΗΜΕΙΩΣΕΙΣ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

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

Διαβάστε περισσότερα

Πληροφορίες. Εισαγωγή στην Πληροφορική. Κατηγορίες υλισµικού. Περίληψη µαθήµατος (συνέχεια) Επεξεργαστής Μνήµη. Χειµερινό Εξάµηνο 2006-07

Πληροφορίες. Εισαγωγή στην Πληροφορική. Κατηγορίες υλισµικού. Περίληψη µαθήµατος (συνέχεια) Επεξεργαστής Μνήµη. Χειµερινό Εξάµηνο 2006-07 Πληροφορίες Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Μόνο για την επόµενη Τετάρτη 25/10, το µάθηµα (12-13) δεν θα πραγµατοποιηθεί. Τα εργαστήρια θα ξεκινήσουν

Διαβάστε περισσότερα

(Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να

(Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να Κεεφάάλλααι ιοο:: 3Β ο Τίττλλοοςς Κεεφααλλααί ίοουυ: : Αρχιτεκτονική Ηλ/κου Τµήµατος των Υπολ. Συστηµάτων (Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να αναφέρετε τις τιµές των

Διαβάστε περισσότερα

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό

ΕΠΛ031 - Εισαγωγή στον Προγραμματισμό Επικοινωνία Προγράμματος Περιβάλλοντος ΕΠΛ031 Εισαγωγή στον Προγραμματισμό Επικοινωνία Προγράμματος Περιβάλλοντος Λογικές Μονάδες Μεταφορά εδομένων Μορφοποίηση εδομένων Νέαρχος Πασπαλλής Επισκέπτης Ακαδημαϊκός

Διαβάστε περισσότερα

ΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΘΕΜΑ 1 Α.

ΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΘΕΜΑ 1 Α. ΙΑΓΩΝΙΣΜΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΘΕΜΑ 1 Α. 1. Αν το Α έχει την τιµή 10 και το Β την τιµή 20 τότε η έκφραση (Α > 8 ΚΑΙ Β < 20) Ή (Α > 10 Ή Β = 10) είναι αληθής 2. Σε περίπτωση εµφωλευµένων βρόχων, ο εσωτερικός

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ. Πρόγραμμα Διαχείρισης Α.Π.Δ.

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ. Πρόγραμμα Διαχείρισης Α.Π.Δ. ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ Πρόγραμμα Διαχείρισης Α.Π.Δ. Περιεχόμενα ΚΕΦΑΛΑΙΟ 1 Εγκατάσταση του προγράμματος 1 ΚΕΦΑΛΑΙΟ 2 Οδηγίες χρήσης προγράμματος με παράδειγμα 2 ΚΕΦΑΛΑΙΟ 3 Αντιγραφή Α.Π.Δ. προηγούμενης περιόδου

Διαβάστε περισσότερα

Τύποι, Σταθερές και Μεταβλητές

Τύποι, Σταθερές και Μεταβλητές ΚΕΦΑΛΑΙΟ 3 Τύποι, Σταθερές και Μεταβλητές Η έννοια της μεταβλητής Γενικά μπορούμε να πούμε ότι η έννοια της μεταβλητής στον προγραμματισμό είναι άμεσα συνδεδεμένη με την έννοια που αυτή έχει σε μαθηματικό

Διαβάστε περισσότερα

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της;

1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες εντολές (μορφές) της; 1. Πότε χρησιμοποιούμε την δομή επανάληψης; Ποιες είναι οι διάφορες (μορφές) της; Η δομή επανάληψης χρησιμοποιείται όταν μια σειρά εντολών πρέπει να εκτελεστεί σε ένα σύνολο περιπτώσεων, που έχουν κάτι

Διαβάστε περισσότερα

ΟΙ ΣΤΡΑΤΗΓΙΚΕΣ ΠΡΟΣΘΕΣΗΣ ΚΑΙ ΑΦΑΙΡΕΣΗΣ ΜΕ ΑΡΙΘΜΟΥΣ ΜΕΧΡΙ ΤΟ 20

ΟΙ ΣΤΡΑΤΗΓΙΚΕΣ ΠΡΟΣΘΕΣΗΣ ΚΑΙ ΑΦΑΙΡΕΣΗΣ ΜΕ ΑΡΙΘΜΟΥΣ ΜΕΧΡΙ ΤΟ 20 ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΤΜΗΜΑ ΔΗΜΟΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΚΑΘΗΓΗΤΗΣ Χ. ΛΕΜΟΝΙΔΗΣ ΟΙ ΣΤΡΑΤΗΓΙΚΕΣ ΠΡΟΣΘΕΣΗΣ ΚΑΙ ΑΦΑΙΡΕΣΗΣ ΜΕ ΑΡΙΘΜΟΥΣ ΜΕΧΡΙ ΤΟ 20 Στη διδασκαλία συνήθως τα παιδιά αρχικά διδάσκονται τις

Διαβάστε περισσότερα

Εισαγωγή στο προγραμματισμό Η/Υ

Εισαγωγή στο προγραμματισμό Η/Υ Εισαγωγή στο προγραμματισμό Η/Υ Fortran 90/95/2003 Silverfrost FTN95: Fortran for Windows http://www.silverfrost.com/default.aspx http://users.auth.gr/~ppi/fortran/ Ηλεκτρονικός Υπολογιστής Hardware Software

Διαβάστε περισσότερα

Μορφοποίηση εικόνων. Εισαγωγή. Στόχος κεφαλαίου

Μορφοποίηση εικόνων. Εισαγωγή. Στόχος κεφαλαίου Περιεχόμενα Κεφάλαιο 1: Προετοιμασία παρουσίασης...1 Κεφάλαιο 2: Διαχείριση διαφανειών...18 Κεφάλαιο 3: Διαχείριση γραφικών...31 Κεφάλαιο 4: Επεξεργασία εικόνων με το Adobe Photoshop...56 Κεφάλαιο 5: Μορφοποίηση

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Πολυμέσα. Ιστορική Αναδρομή Υπερκείμενο

Πολυμέσα. Ιστορική Αναδρομή Υπερκείμενο Πολυμέσα Πολυμέσα είναι κλάδος της πληροφορικής ο οποίος ασχολείται με το συνδυασμό ψηφιακών δεδομένων πολλαπλών μορφών. Τα δομικά στοιχεία των πολυμέσων είναι τα εξής : Κείμενο Εικόνα Ήχος Κινούμενη εικόνα

Διαβάστε περισσότερα

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Python & NLTK: Εισαγωγή Εισαγωγή Γιατί Python? Παρουσίαση NLTK Πηγές και χρήσιμα εργαλεία Φροντιστήριο σε Python Στο φροντιστήριο: Εισαγωγή στην Python Ζητήματα προγραμματισμού για

Διαβάστε περισσότερα

[11] Υπολογιστικά συστήματα: Στρώματα. Περιεχόμενα. Εισαγωγή. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό

[11] Υπολογιστικά συστήματα: Στρώματα. Περιεχόμενα. Εισαγωγή. επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό Υπολογιστικά συστήματα: Στρώματα 1 ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗς ΠΛΗΡΟΦΟΡΙΚΗΣ επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Εισαγωγή στο Unix Περιεχόμενα Εισαγωγή 2 Εισαγωγή

Διαβάστε περισσότερα

Σύγχρονες Αρχιτεκτονικές Υπολογιστών

Σύγχρονες Αρχιτεκτονικές Υπολογιστών ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΜΑΤΙΚΗΣ Σύγχρονες Αρχιτεκτονικές Υπολογιστών ΑΚΑ ΗΜΑΪΚΟ ΕΤΟΣ 2014-2015 Αρχιτεκτονική Συνόλου Εντολών (Instruction Set Architecture-ISA) 1 Ένας υπολογιστής

Διαβάστε περισσότερα

Ενότητα 1 Διάλεξη 1β

Ενότητα 1 Διάλεξη 1β Σχολή Εφαρμοσμένων Μαθηματικών και Φυσικών Επιστημών Εθνικό Μετσόβιο Πολυτεχνείο Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού Ενότητα 1 Διάλεξη 1β Σιέττος Κωνσταντίνος Άδεια Χρήσης Το παρόν

Διαβάστε περισσότερα

Σειριακό Τερματικό Serial Terminal (Dumb Terminal)

Σειριακό Τερματικό Serial Terminal (Dumb Terminal) Σειριακό Τερματικό Serial Terminal (Dumb Terminal) Ένα σειριακό τερματικό είναι ο απλούστερος τρόπος για να συνδέσουμε πολλαπλές μονάδες εξόδου (οθόνες) και εισόδου (πληκτρολόγια) σε ένα μηχάνημα UNIX

Διαβάστε περισσότερα

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5)

ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ. Από τον κατάλογο που εμφανίζεται επιλέγω: Αποστολή προς Δισκέτα (3,5) ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΣΕ ΔΙΣΚΕΤΑ ΑΝΤΙΓΡΑΦΗ ΑΡΧΕΙΟΥ ΑΠΟ ΔΙΣΚΕΤΑ Τοποθετώ μια δισκέτα στον οδηγό τη δισκέτας του υπολογιστή. Τοποθετώ τη δισκέτα που έχει το αρχείο μου στον οδηγό τη δισκέτας του υπολογιστή.

Διαβάστε περισσότερα

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

Γ' ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΚΦΩΝΗΣΕΙΣ 1 Γ' ΛΥΚΕΙΟΥ ΤΕΧΝΟΛΟΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΘΕΜΑ 1 ο ΕΚΦΩΝΗΣΕΙΣ Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις 1-5 και δίπλα τη

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΟ ΣΕΝΑΡΙΟ. «Το Υλικό του Υπολογιστή»

ΔΙΔΑΚΤΙΚΟ ΣΕΝΑΡΙΟ. «Το Υλικό του Υπολογιστή» ΔΙΔΑΚΤΙΚΟ ΣΕΝΑΡΙΟ «Το Υλικό του Υπολογιστή» 1.Τίτλος Διδακτικού Σεναρίου Το Υλικό του Υπολογιστή. 2. Εκτιμώμενη Διάρκεια Προβλέπεται να διαρκέσει συνολικά 2 διδακτικές ώρες. 3. Ένταξη στο πρόγραμμα σπουδών

Διαβάστε περισσότερα

Προγραµµατιστική Εργασία 1 ο Μέρος

Προγραµµατιστική Εργασία 1 ο Μέρος Πανεπιστήµιο Κρήτης, Τµήµα Επιστήµης Υπολογιστών 4 Νοεµβρίου 2011 ΗΥ240: οµές εδοµένων Χειµερινό Εξάµηνο Ακαδηµαϊκό Έτος 2011-12 ιδάσκουσα: Παναγιώτα Φατούρου Προγραµµατιστική Εργασία 1 ο Μέρος Ηµεροµηνία

Διαβάστε περισσότερα

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 12 Σχεδιασμός Ανάπτυξη Λειτουργία Π.Σ. 1. ΑΡΧΕΣ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 1.1 Δυνατότητες Λειτουργικών Συστημάτων 1.1.1 Εισαγωγή Ο όρος Λειτουργικό Σύστημα (Operating System), εκφράζει το σύνολο των προγραμμάτων

Διαβάστε περισσότερα

Συστήματα Υπολογιστών 2008-09

Συστήματα Υπολογιστών 2008-09 Συστήματα Υπολογιστών 2008-09 Λειτουργικά Συστήματα Μέρος 1 ο Δρ Διονύσης Κεχαγιάς Δρ Φιλαρέτη Τσαλακανίδου Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Τμήμα Ηλετρολόγωνν Μηχανικών και Μηχανικών Υπολογιστών

Διαβάστε περισσότερα