1. Εισαγωγή στην Πληροφορική

Σχετικά έγγραφα
Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ Της ΠΛΗΡΟΦΟΡΙΚΗΣ. Εισαγωγή

Εισαγωγή στην Επιστήμη της Πληροφορικής και των Υπολογιστών

Εισαγωγή στην Επιστήμη των Η/Υ και Προγραμματισμός. Πρώτο Μάθημα - Εισαγωγικό

Εισαγωγή στην Επιστήµη της Πληροφορικής και των Υπολογιστών

Χειµερινό εξάµηνο

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. Δρ.

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

Εισαγωγή στην Επιστήµη των Η/Υ

Εισαγωγή στην Επιστήµη των Η/Υ

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


Σύντοµη Ιστορία της Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ. Δρ. Κωνσταντίνος Κούτσικος - Δρ. Ιάσων Κουφοδόντης

Στόχοι Κεφαλαίου. Βασικές έννοιες (ΙΙ) Βασικές έννοιες. Γενική Εικόνα. Νικόλας Τσαπατσούλης,

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Εισαγωγή

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

Εισαγωγή στην επιστήμη των υπολογιστών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 1 : Εισαγωγή στην επιστήμη των υπολογιστών. Δρ.

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Τμήμα Λογιστικής. 1 Στέργιος Παλαμάς

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

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

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

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

Πληροφορική και Υπολογιστές

[1] Στόχοι. Υπολογιστικά συστήματα. Υπολογιστικά συστήματα

κεφάλαιο Βασικές Έννοιες Επιστήμη των Υπολογιστών

Πληροφορική Ι (Θεωρία)

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

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

Προγραμματισμός Η/Υ. 1 η ενότητα: Εισαγωγή στις γλώσσες προγραμματισμού. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εισαγωγή

ΠΛΗΡΟΦΟΡΙΚΗ 1 Ο ΜΑΘΗΜΑ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

1.4 Τεχνολογικές εξελίξεις στο Υλικό Υπολογιστών

Εισαγωγή στην Πληροφορική. Ανδρέας Παπασαλούρος

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Επανάληψη

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

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

1 η Γενιά Υπολογιστών

Περιεχόμενα. 2 Αριθμητικά συστήματα

Κεφάλαιο 7. ΕΠΑΛ Σύμης Εφαρμογές πληροφορικής Ερωτήσεις επανάληψης

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

Εισαγωγή στον Προγ/μό Υπολογιστών. Διάλεξη 0

Εισαγωγή στους Η/Υ. Η εμφάνιση και η εξέλιξη των Η/Υ

ΠΑΣΠ Πανεπιστημίου Πειραιά Τμήμα Διεθνών και Ευρωπαϊκών Σπουδών

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Γενικά περί υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών

Αρβανίτη Κατερίνα Κατζιλιέρη Μαρία Μπεζαντέ Καλλιόπη Παναγοπούλου Κατερίνα

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

Πρόταση για Ανασχηματισμό του Προγράμματος Προπτυχιακών Σπουδών της ΣΗΜΜΥ

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

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

ΑΕΠΠ Ερωτήσεις θεωρίας

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον κεφ.6 Εισαγωγή στον Προγραμματισμό

Κεφάλαιο 2. Οι μεταβολές ως χαρακτηριστικό γνώρισμα της τεχνολογίας επικοινωνιών

Κεφάλαιο 6 ο. Διαχείριση στοιχείων λογισμικού

Διδακτική της Πληροφορικής ΙΙ

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ

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

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

υπολογιστικών συστημάτων. Παρουσίαση με τίτλο "Περιεχόμενο, διαδικασία μαθήματος και εισαγωγή"

επιφάνεια πυριτίου Αναφορά στο Εκπαιδευτικό Υλικό : 5. Αναφορά στο Εργαστήριο :

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

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

Παραδείγματα Δεδομένων: Οι τιμές στο κυλικείο, μια λίστα από ονόματα, τα σήματα της τροχαίας.

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Βασίλειος Κοντογιάννης ΠΕ19

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 1 ο

ΚΕΦΑΛΑΙΟ 6 ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ. 03/01/09 Χαράλαμπος Τζόκας 1

Θέματα Προγραμματισμού Η/Υ

ΠΕΡΙΕΧΟΜΕΝΑ 1 ΚΕΦΑΛΑΙΟ ΟΙ ΥΠΟΛΟΓΙΣΤΕΣ ΑΠΟ ΤΗΝ ΑΡΧΑΙΟΤΗΤΑ ΜΕΧΡΙ ΣΗΜΕΡΑ Ιστορική αναδρομή Υπολογιστικές μηχανές

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

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

ΕΙΣΑΓΩΓΗ στους Η/Υ. Δρ. Β Σγαρδώνη. Τμήμα Τεχνολογίας Αεροσκαφών ΤΕΙ ΣΤΕΡΕΑΣ ΕΛΛΑΔΑΣ. Χειμερινό Εξάμηνο

Τεχνολογία Πολυμέσων. Ενότητα # 3: Συστήματα πολυμέσων Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Άσκηση 1 (ανακοινώθηκε στις 20 Μαρτίου 2017, προθεσμία παράδοσης: 24 Απριλίου 2017, 12 τα μεσάνυχτα).

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

Σύνοψη Θεωρίας ΟΡΙΣΜΟΣ ΚΑΙ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΑΛΓΟΡΙΘΜΩΝ

Ιόνιο Πανεπιστήμιο Τμήμα Τεχνών Ήχου και Εικόνας. Ακαδημαϊκό Έτος

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

Μαλούτα Θεανώ Σελίδα 1

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Σημειώσεις Θεωρίας

Περίγραμμα. Διαδικαστικά. Εργαστήρια Τεχνικών Προγραμματισμού 21/2/2017. ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ και Τεχνικές Προγραμματισμού

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

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής

ΗΜΜΥ 100 Εισαγωγή στην Τεχνολογία

Η ΙΣΤΟΡΙΑ ΤΩΝ ΠΡΟΣΩΠΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ!!! 1 ο ΕΠΑΛ ΡΟΔΟΥ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ!!!! Χατζηνικόλας Κώστας

ΕΙΔΗ,ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙ- ΣΜΟΥ

2. Αλγόριθμοι, δομές δεδομένων και πολυπλοκότητα

ΗΜΜΥ 100 Εισαγωγή στην Τεχνολογία

Κεφ. 2 Θέματα Θεωρητικής Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Ιστορία της γραφής και της τεχνολογίας των πληροφοριών

Εισαγωγή στην Αρχιτεκτονική Η/Υ

Transcript:

Πληροφορική και Θεολογία 1. Εισαγωγή στην Πληροφορική Διδάσκοντες 2018-2019: - Χρήστος Κατσάνος (σημερινή διάλεξη) - Παναγιώτης Κατσαρός - Απόστολος Παπαδόπουλος - Θρασύβουλος-Κωνσταντίνος Τσιάτσος

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

Τι είναι η Επιστήμη της Πληροφορικής; Η μελέτη της πληροφορίας, και των τρόπων αναπαράστασης, οργάνωσης, διαχείρισης, και μετασχηματισμού για την επίλυση συγκεκριμένων προβλημάτων Η διαχείριση και ο μετασχηματισμός γίνονται μέσω βημάτων της διαδικασίας υπολογισμού (cmputatin), η οποία και περιγράφεται με αλγορίθμους (algrithms) Θέματα/αντικείμενα (ενδεικτικά) Υπολογιστές και δεδομένα: αναπαράσταση δεδομένων, αναπαράσταση αριθμών, πράξεις με bit Υλικό : Οργάνωση και δίκτυα υπολογιστών Λογισμικό: Λειτουργικά Συστήματα, Αλγόριθμοι, Γλώσσες Προγραμματισμού, Τεχνολογία Λογισμικού, Αλληλεπίδραση Ανθρώπου-Υπολογιστή Οργάνωση Δεδομένων: Δομές Δεδομένων, Δομές Αρχείων, Βάσεις Δεδομένων Προχωρημένα Θέματα: Συμπίεση Δεδομένων, Ασφάλεια, Τεχνητή Νοημοσύνη

Επιστήμη της Πληροφορικής Η επιστήμη των αλγορίθμων Ο αλγόριθμος είναι ένα σύνολο βημάτων που καθορίζει τον τρόπο εκτέλεσης μιας εργασίας Η Επιστήμη της Πληροφορικής αντλεί στοιχεία από άλλους τομείς, όπως Μαθηματικά Μηχανική Ψυχολογία Διοίκηση Επιχειρήσεων Βιολογία Νομική κλπ Σήμερα εμπλέκεται σε όλες τις πτυχές της καθημερινότητας

Παραδείγματα αλγορίθμων Ο Ευκλείδιος αλγόριθμος Τι κάνει αυτός ο αλγόριθμος; (στο αμφιθέατρο, συμμετέχουμε όλοι) 1. Σήκω όρθιος και σκέψου τον αριθμό 1 2. Βρες κάποιον άλλο που είναι όρθιος και προσθέστε τους αριθμούς σας, κράτα το άθροισμα 3. Από το ζευγάρι του ΒΗΜΑΤΟΣ 2, ο ένας κάθεται, ενώ ο άλλος πηγαίνει πίσω στο ΒΗΜΑ 2.

Διάγραμμα ροής: Ένας τρόπος αναπαράστασης αλγορίθμων (1/2) Συμβολισμός διαγραμμάτων ροής Αρχή - Τέλος: Έλλειψη Είσοδος - Έξοδος: Παραλληλόγραμμο (π.χ. διάβασμα τιμής από πληκτρολόγιο, εκτύπωση) Ανάθεση τιμής: Ορθογώνιο Απόφαση: Ρόμβος (λογική συνθήκη με δύο εξόδους: Αληθής Ψευδής Ναι - Όχι) Σύνδεση με άλλο τμήμα του διαγράμματος ροής: Κύκλος (σε πολύπλοκα διαγράμματα π.χ. όταν δεν χωράνε σε μία σελίδα)

Διάγραμμα ροής: Ένας τρόπος αναπαράστασης αλγορίθμων (2/2) Τι κάνει αυτός ο αλγόριθμος;

Κεντρικά Ερωτήματα της Επιστήμης της Πληροφορικής Ποια προβλήματα μπορούν να λυθούν με αλγοριθμικές διεργασίες; Πώς μπορεί να γίνει εύκολη η ανακάλυψη αλγορίθμων; Πώς μπορούν να βελτιωθούν οι τεχνικές για την αναπαράσταση και την επικοινωνία των αλγορίθμων; Πώς μπορούν να αναλυθούν και να συγκριθούν τα χαρακτηριστικά διαφορετικών αλγορίθμων; Πώς μπορούν να χρησιμοποιηθούν οι αλγόριθμοι για το χειρισμό πληροφοριών; Πώς μπορούν να εφαρμοστούν αλγόριθμοι για την παραγωγή ευφυούς συμπεριφοράς; Με ποιον τρόπο επηρεάζει την κοινωνία η εφαρμογή των αλγορίθμων;

Ο υπολογιστής ως μαύρο κουτί Επεξεργαστής δεδομένων Μπορεί να είναι ένας εξειδικευμένος υπολογιστής που έχει σχεδιαστεί να κάνει μία συγκεκριμένη εργασία (π.χ. έλεγχος ροής καυσίμων σε ένα αυτοκίνητο) Προγραμματιζόμενος επεξεργαστής δεδομένων Πρόγραμμα: σύνολο από εντολές (οδηγίες) οι οποίες λένε στον υπολογιστή τι να κάνει με τα δεδομένα Τα προγράμματα αποτελούνται από σύνολα οδηγιών οι οποίες είναι γραμμένες σε μια γλώσσα προγραμματισμού Παλαιότερα οι οδηγίες υλοποιούνταν με την αλλαγή καλωδίωσης ή με το άναμμα και σβήσιμο μιας ομάδας διακοπτών

Ίδιο πρόγραμμα, διαφορετικά δεδομένα εισόδου

Ίδια δεδομένα εισόδου, διαφορετικά προγράμματα

Κοιτάζοντας μέσα στο μαύρο κουτί (ή Πως λειτουργεί ένας υπολογιστής) Οι πρώτοι υπολογιστές βασίζονταν στο μοντέλο Turing (1936) και αποθήκευαν στη μνήμη μόνο τα δεδομένα Οι σύγχρονοι υπολογιστές βασίζονται στο μοντέλο vn Neumann (1944-45) Ορίζει ότι το πρόγραμμα πρέπει να αποθηκεύεται στη μνήμη, αποτελείται από πεπερασμένο αριθμό εντολών οι οποίες εκτελούνται σειριακά Ορίζει τον υπολογιστή ως 4 υποσυστήματα: Μνήμη Αριθμητική και λογική μονάδα Μονάδα ελέγχου Είσοδος/Έξοδος

Συστατικά στοιχεία υπολογιστή βάσει μοντέλου vn Neumann (1/3) Υλικό υπολογιστή (cmputer hardware) Πρέπει να περιέχει και τα 4 συστατικά στοιχεία που όρισε ο vn Neumann Υπάρχουν διαφορετικά είδη μνήμης, υποσυστημάτων εισόδου/εξόδου κλπ Δεδομένα (data) Ο υπολογιστής είναι μία μηχανή επεξεργασίας δεδομένων Δεν καθορίζει τον τύπο του υπολογιστή Π.χ. μηχανικός, ηλεκτρονικός, κβαντικός, με φωτόνια κλπ Δεν καθορίζει τον τρόπο με τον οποίο αποθηκεύονται τα δεδομένα Εάν ο υπολογιστής είναι ηλεκτρονικός (Η/Υ) τότε ο καλύτερος τρόπος για την αποθήκευση δεδομένων είναι με τη μορφή ηλεκτρικών σημάτων Πιο συγκεκριμένα με την παρουσία ή την απουσία τους, άρα ο Η/Υ αποθηκεύει δεδομένα σε μία από δύο δυνατές καταστάσεις (0 και 1) Τα δεδομένα καθημερινής ζωής έχουν πάνω από δύο καταστάσεις π.χ. αραβικό σύστημα αρίθμησης (10), ελληνικά γράμματα (24), εικόνα (?) βίντεο (?) Χρειάζομαι κάποιο σχήμα μετατροπής (αναπαράστασης) των δεδομένων καθημερινής ζωής στο δυαδικό σύστημα

Συστατικά στοιχεία υπολογιστή βάσει μοντέλου vn Neumann (2/3) Λογισμικό υπολογιστών (cmputer sftware) Τα προγράμματα που εκτελεί ο υπολογιστής Προγραμματισμός στους πρώτους υπολογιστές (όχι μοντέλο vn Neumann) Αλλαγή καλωδίωσης ή άναμμα/σβήσιμο ομάδας διακοπτών Από από κάποιο χειριστή ή μηχανικό πριν την επεξεργασία δεδομένων Το μοντέλο vn Neumann άλλαξε την έννοια του όρου Προγραμματισμός Τα προγράμματα (όπως και τα δεδομένα) πρέπει να αποθηκεύονται στη μνήμη του υπολογιστή Το πρόγραμμα πρέπει να έχει τη μορφή μιας ακολουθίας εντολών. Κάθε εντολή χειρίζεται 1 ή περισσότερα στοιχεία δεδομένων Παράδειγμα προγράμματος που αποτελείται από εντολές 1. Εισαγωγή του πρώτου στοιχείου δεδομένων στη μνήμη 2. Εισαγωγή του δεύτερου στοιχείου δεδομένων στη μνήμη 3. Πρόσθεση των δύο αριθμών και αποθήκευση του αποτελέσματος στη μνήμη 4. Εμφάνιση του αποτελέσματος

Συστατικά στοιχεία υπολογιστή βάσει μοντέλου vn Neumann (3/3) Λογισμικό υπολογιστών (cmputer sftware) (συνέχεια) Τι κερδίζω εάν ένα πρόγραμμα αποτελείται από εντολές; Δυνατότητα επαναχρησιμοποίησης Εκατομμύρια εργασίες εκτελούνται από έναν υπολογιστή Ευκολία προγραμματισμού (πρακτικά ένα πρόγραμμα είναι ένας διαφορετικός συνδυασμός διαθέσιμων εντολών) Έννοιες που σχετίζονται με την ανάπτυξη λογισμικού Αλγόριθμοι: ζητήματα επίλυσης νέων προβλημάτων, πολυπλοκότητας κλπ Γλώσσες προγραμματισμού: τα προγράμματα γράφονται σε μία γλώσσα Τεχνολογία λογισμικού: συστηματική ανάπτυξη και συντήρηση λογισμικού Αλληλεπίδραση Ανθρώπου-Υπολογιστή: σχεδιασμός, ανάπτυξη και αξιολόγηση διαδραστικών συστημάτων Λειτουργικά συστήματα: ομάδα εντολών που είναι κοινή για όλα τα υπόλοιπα προγράμματα (εφαρμογές)

Η σημασία της ανάπτυξης ποιοτικού λογισμικού Swiss federal gvernment [τοπικά] [nline]

Γιατί είναι τόσο δύσκολη η ανάπτυξη ποιοτικού λογισμικού (1/4); http://www.prjectcartn.cm/

Γιατί είναι τόσο δύσκολη η ανάπτυξη ποιοτικού λογισμικού (2/4); http://www.prjectcartn.cm/

Γιατί είναι τόσο δύσκολη η ανάπτυξη ποιοτικού λογισμικού (3/4); http://www.prjectcartn.cm/

Γιατί είναι τόσο δύσκολη η ανάπτυξη ποιοτικού λογισμικού (4/4); http://www.prjectcartn.cm/

Κατασκευή προϊόντων: Παραδείγματα κακού σχεδιασμού (Bad design) Για 2 άτομα! Ή μήπως όχι? Ποιο κουμπί ανοίγει ποιο μάτι? RG 7 5 3 1 Πως πάω στον 2 ο όροφο? Τι είναι το RG? Μήπως Rf Garden? Και αν το ασανσέρ σταματήσει πατήστε Ctrl+Alt+Del

Κατασκευή προϊόντων: Παραδείγματα καλού σχεδιασμού (Gd design)

Ανάπτυξη υπολογιστικών συστημάτων: Παραδείγματα κακού σχεδιασμού (Bad design) Όλα ΟΚ ή μήπως όχι? Και εγώ τι να κάνω? (σημείωση: το OK δεν λύνει το πρόβλημα, συνεχίζει και εμφανίζεται το παράθυρο) Τι σημαίνουν όλα αυτά; Όλα εντάξει! Εάν πατήσω οποιοδήποτε κουμπί θα φτιάξει! Δεν είσαι και πολύ ευγενική εφαρμογή

Ανάπτυξη υπολογιστικών συστημάτων: Παραδείγματα καλού σχεδιασμού (Gd design) Ggle Search: Πρόβλεψη για το τι ψάχνω MEGAsync: Ανέβασμα αρχείων (ενημέρωση για την πρόοδο της εργασίας) Ggle Maps: Επιλογή πιο σύντομης (χρονικά) διαδρομής Drpbx: Σκανάρισμα εγγράφου σαν να βγάζω φωτογραφία

Τι καταλαβαίνουμε για το σχεδιασμό αυτού του συστήματος;

Ιστορία των υπολογιστικών μηχανών (1/8) Πρώιμες υπολογιστικές μηχανές (έχουν ελάχιστη σχέση με τη σημερινή έννοια) 2500 π.χ.: Άβακας για την καταγραφή αριθμητικών τιμών. Οι θέσεις των χαντρών αναπαριστούν αριθμούς 79 μ.χ.: Αρχαίοι Έλληνες -> Μηχανισμός Αντικυθήρων: Υπολογιστής θέσης άστρων και πλανητών. Οι θέσεις γραναζιών αναπαριστούν αριθμούς Αρχαιολογικό εύρημα Βίντεο dem [τοπικά] [nline] Αναπαράσταση μηχανισμού

Ιστορία των υπολογιστικών μηχανών (2/8) Πρώιμες υπολογιστικές μηχανές (συνέχεια) 1642-1645: Blaise Pascal Pascaline μηχανική αριθμομηχανή (+,-) Θέσεις γραναζιών για αριθμούς Pascaline 1671: Gttfried Wilhelm vn Leibniz Ο τροχός του Leibniz (+, -, x, /) Θέσεις γραναζιών για αριθμούς Ο τροχός του Leibniz 1801: Jseph Marie Jacquard Αργαλειός του Jacquard Χρήση έννοιας προγράμματος και αποθήκευσης Διάτρητες κάρτες (σας αποθηκευμένα προγράμματα) για έλεγχο στημονιών στην κατασκευή υφαντών Αργαλειός του Jacquard

Ιστορία των υπολογιστικών μηχανών (3/8) Πρώιμες υπολογιστικές μηχανές (συνέχεια) 1823: Charles Babbage Διαφορική μηχανή για επίλυση πολυωνυμικών εξισώσεων Λίγο αργότερα αναλυτική μηχανή με μνήμη, χειριστή, εισόδους, εξόδους, προγραμματισμό με διάτρητες κάρτες Διαφορική μηχανή Babbage 1890: Herman Hllerith Κατασκευάζει προγραμματιζόμενη μηχανή που διαβάζει, καταμετρά, και ταξινομεί δεδομένα αποθηκευμένα σε διάτρητες κάρτες H μηχανή χρησιμοποιείται στην απογραφή πληθυσμού των Η.Π.Α. Ιδρυτής μιας από τις εταιρείες που αργότερα ενώθηκαν για να σχηματίσουν την ΙΒΜ (Internatinal Business Machines Crpratin) Μηχανή Hllerith

Ιστορία των υπολογιστικών μηχανών (4/8) Οι πρώτοι ηλεκτρονικοί υπολογιστές (1930-1950) 1939: Jhn Vincent Atanasff & Cliffrd Berry ABC (Atanasff Berry Cmputer) Ο πρώτος υπολογιστής ειδικής χρήσης (επίλυση συστημάτων γραμμικών εξισώσεων) που κωδικοποιούσε τα δεδομένα με ηλεκτρικό τρόπο Βασισμένος σε λυχνίες κενού Atanasff Berry Cmputer 1943-1945: Alan Turing Clssus cmputer Επεξεργασία 25000 χαρακτήρων / δευτερόλεπτο Στόχος να σπάσει τον κώδικα Enigma των Γερμανών (Β Παγκόσμιος Πόλεμος, 1939-1945) Βασισμένος σε λυχνίες κενού Atanasff Berry Cmputer Clssus 10

Ιστορία των υπολογιστικών μηχανών (5/8) Οι πρώτοι ηλεκτρονικοί υπολογιστές (1930-1950) (συνέχεια) 1944: Hward Aiken Harvard Mark I Υπολογιστής γενικής χρήσης Βασισμένος σε μηχανικά και ηλεκτρικά στοιχεία (ρελέ κλπ) 765.000 στοιχεία, 23 τ.μ., 4,3 τόνοι 1946: Jhn Mauchly & Jhn Presper Eckert ENIAC (Electrnic Numerical Integratr and Cmputer) O πρώτος πλήρως ηλεκτρονικός υπολογιστής γενικής χρήσης Στόχος ο υπολογισμός βαλλιστικών πινάκων για νέα όπλα Βασισμένος σε λυχνίες κενού 18.000 λυχνίες κενού, 30 μέτρα μήκος, 3 μέτρα ύψος, 30 τόνοι Ο υπολογιστής Mark I Ο υπολογιστής ENIAC

Ιστορία των υπολογιστικών μηχανών (6/8) Ο πρώτος Η/Υ με βάση το μοντέλο vn Neumann 1950: Jhn Mauchly, Jhn Presper Eckert, Jhn vn Neumann EDVAC (Electrnic Discrete Variable Autmatic Cmputer) Η μνήμη περιέχει και προγράμματα εκτός από δεδομένα Δεν χρειάζεται να αλλάζει καλωδίωση για κάθε νέο πρόγραμμα Ο Jhn vn Neumann μπροστά στον EDVAC

Ιστορία των υπολογιστικών μηχανών (7/8) Γενιές Η/Υ (1951 - Σήμερα), όλοι βάσει μοντέλου vn Neumann Πρώτη γενιά (1951-1959) Ογκώδεις υπολογιστές σε κλειστά δωμάτια που χρησιμοποιούσαν λυχνίες κενού Δεύτερη γενιά (1959-1965) Χρήση τρανζίστορ αντί γιά λυχνίες κενού -> Μείωση κόστους και μεγέθους Γλώσσες προγραμματισμού υψηλού επιπέδου (FORTRAN, COBOL) Διαχωρισμός της προγραμματιστικής εργασίας από το χειρισμό του υπολογιστή Τρίτη γενιά (1965-1975) Χρήση ολοκληρωμένου κυκλώματος (τρανζίστορ, καλωδίωση κλπ σε ένα μόνο τσιπ) -> περαιτέρω μείωση κόστους και μεγέθους Εμφάνιση mini υπολογιστών και πακέτων λογισμικού Γεννήθηκε η βιομηχανία λογισμικού Τέταρτη γενιά (1975-1985) Εμφάνιση μικροϋπολογιστών Εμφάνιση Προσωπικού Υπολογιστή (PC, persnal cmputer), 1981 από IBM Εμφάνιση Δικτύων Υπολογιστών

Ιστορία των υπολογιστικών μηχανών (8/8) Γενιές Η/Υ (1950 - Σήμερα) (συνέχεια) Πέμπτη γενιά (1985 - σήμερα) Tim Berners-Lee: Δημιουργία του Παγκόσμιου Ιστού (Wrld Wide Web) Φορητοί υπολογιστές Βελτιώσεις στα δευτερεύοντα μέσα αποθήκευσης (CDROM, DVD, κ.λπ.) Πολυμέσα (multimedia) Εικονική πραγματικότητα (virtual reality) Πανταχού-παρών υπολογιστής (ubiquitus cmputing) Tuch-Screen Laptp Smartphnes Πανταχού-παρών υπολογιστής

Υλικό 1 ης γενιάς (1951-1959) Ηλεκτρονική λυχνία Μεγάλο μέγεθος, μικρή αξιοπιστία, πολλή θερμότητα Μαγνητικό τύμπανο Συσκευή μνήμης που περιστρεφόταν κάτω από κεφαλή ανάγνωσης/εγγραφής Μαγνητική ταινία Σειριακή μνήμη

Υλικό 2 ης γενιάς (1959-1965) Τρανζίστορ Αντί για λυχνίες Ταχύτερο, μικρότερο, ανθεκτικότερο, φτηνότερο Πίνακες κυκλωμάτων Μαγνητική μνήμη πυρήνα Αντί μαγνητικού τυμπάνου Άμεση προσπέλαση δεδομένων Μαγνητικός δίσκος Αντί μαγνητικής ταινίας Άμεση προσπέλαση δεδομένων

Υλικό 3 ης γενιάς (1965-1971) Ολοκληρωμένα κυκλώματα Αντί για πίνακες κυκλωμάτων Συμπαγή κομμάτια σιλικόνης Ταχύτερα, μικρότερα, φτηνότερα, πιο αξιόπιστα Τερματικά Συσκευές εισόδου/εξόδους με πληκτρολόγιο και ποντίκι

Υλικό 4 ης γενιάς (1971-σήμερα) Κυκλώματα μεγάλης ολοκλήρωσης (Large-scale integratin, LSI) και πολύ μεγάλης ολοκλήρωσης (Very Large-scale integratin, VLSI) Πρόοδος στην τεχνολογία του τσιπ (chip) Προσωπικοί υπολογιστές (Persnal Cmputer, PC) Εμπορική αγορά Εταιρείες (π.χ. Apple, Atari, HP) κατασκευάζουν πλέον προσωπικούς υπολογιστές

Λογισμικό 1 ης γενιάς (1951-1959) Γλώσσα μηχανής Τα προγράμματα γράφονται στη δυαδική γλώσσα, τα πάντα εκφράζονται ως ακολουθίες από 0 και 1 Γλώσσα Assembly και μεταγλωττιστής assembly Τα προγράμματα γράφονται σε τεχνητή γλώσσα ειδικών κωδικών Έπειτα μεταγλωττίζονται σε γλώσσα μηχανής Διαχωρισμός προγραμματιστών Προγραμματιστές συστημάτων Προγραμματιστές εφαρμογών

Λογισμικό 2 ης γενιάς (1959-1965) Γλώσσες υψηλού επιπέδου και μεταφραστές Τα προγράμματα γράφονται σε γλώσσα (π.χ. FORTRAN, COBOL, LISP) που χρησιμοποιεί αγγλικές λέξεις/φράσεις Έπειτα μεταφράζεται σε γλώσσα assembly και έπειτα σε γλώσσα μηχανής

Λογισμικό 3 ης γενιάς (1965-1971) Ακόμη μεγαλύτερη διαφοροποίηση ανάμεσα σε Λογισμικό συστημάτων: λογισμικό για βασικές χρήσεις (π.χ. λειτουργικά συστήματα, μεταφραστές, μεταγλωττιστές κλπ) Λογισμικό εφαρμογών: λογισμικό άλλων χρήσεων (προγράμματα προς χρήση από μη-προγραμματιστές) Απομάκρυνση του χρήστη από το υλικό

Λογισμικό 4 ης γενιάς (1971-1989) Δομημένος ή Διαδικαστικός προγραμματισμός Πολύπλοκα προβλήματα διαιρούνται σε μικρότερα υποπροβλήματα (διαδικασίες) Βασίζεται στην έννοια της κλήσης διαδικασίας (ή ρουτίνα, μέθοδος, συνάρτηση) Γλώσσες που τον υποστηρίζουν: Pascal, C, QuickBasic κλπ Ισχυρότερα λειτουργικά συστήματα UNIX, MS-DOS, γραφικό περιβάλλον στα Macintsh Νέο λογισμικό εφαρμογών Λογιστικά φύλλα (Ltus) Επεξεργαστές κειμένου (Wrd Perfect) Συστήματα διαχείρισης βάσεων δεδομένων (dbase)

Λογισμικό 5 ης γενιάς (1990-Σήμερα) Micrsft Κυριαρχούν στην αγορά το Λειτουργικό σύστημα Windws και Προγράμματα εφαρμογών όπως MS Excel, MS Wrd, MS Access Αντικειμενοστρεφής σχεδιασμός Βασίζεται στην έννοια του αντικειμένου Γλώσσες που τον υποστηρίζουν: C++, Java Παγκόσμιος Ιστός (Wrld Wide Web) Διευκολύνει την παγκόσμια επικοινωνία μέσω του Διαδικτύου και συλλογών εγγράφων (ιστότοποι)

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

Οι υπολογιστές σήμερα: Μία σύντομη ταξινόμηση (2/2) Διακομιστές Υπολογιστές που σχεδιάζονται ώστε να παρέχουν υπηρεσίες σε άλλους υπολογιστές μέσω δικτύου Mainframes και Υπερυπολογιστές Mainframes Χρησιμοποιούνται από μεγάλους οργανισμούς, όπως τράπεζες και αεροπορικές εταιρείες, για μεγάλα υπολογιστικά έργα Επικοινωνούν με τα mainframe μέσω τερματικών Πολλαπλές, ταυτόχρονες επικοινωνίες μέσω κοινοχρησίας Υπερυπολογιστές Για χρήστες που χρειάζονται πρόσβαση στους πιο γρήγορους και πιο ισχυρούς υπολογιστές που έχουν κατασκευαστεί Συνήθως χρησιμοποιούνται για επιστημονικούς υπολογισμούς

Κοινωνικά & Ηθικά ζητήματα Εξάρτηση Ψηφιακός διαχωρισμός Ιδιωτικό απόρρητο Πνευματικά δικαιώματα Ηλεκτρονικό έγκλημα Οι υπολογιστές είναι «Γρήγοροι» Αλλά όχι «Εξυπνοι» Δίνουν Απαντήσεις αλλά όχι Λύσεις Τις Λύσεις τις δίνει ο Άνθρωπος που πρέπει να κρίνει τις απαντήσεις των υπολογιστών

Σημείωμα πηγών Για τη δημιουργία των διαφανειών έχω αντλήσει έμπνευση ή/και υλικό από τις εξής πηγές: Brkshear J. G. (2009). Η επιστήμη των υπολογιστών: μια ολοκληρωμένη παρουσίαση. 10 η έκδοση, Εκδόσεις Κλειδάριθμος ΕΠΕ. Fruzan B. (2015). Εισαγωγή στην επιστήμη των υπολογιστών. 3 η έκδοση, Εκδόσεις Κλειδάριθμος ΕΠΕ.