Εισαγωγή στους Ηλεκτρονικούς...
TRANSCRIPT
![Page 1: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/1.jpg)
Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές
1ο Εξάμηνο Σπουδών
Χειμερινό Εξάμηνο 2012/13
Τμήμα Εφαρμοσμένων Μαθηματικών, Πανεπιστήμιο Κρήτης
Διδάσκων: Χαρμανδάρης Ευάγγελος, email: [email protected],
Ιστοσελίδα Μαθήματος:
www.tem.uoc.gr/~vagelis/Courses/ΤEM101/em101.html
![Page 2: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/2.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Δομή και λειτουργίες ενός ηλεκτρονικού υπολογιστή
Hardware, Software.
Σκοπός τoυ Μαθήματος:
Εξοικείωση με τον Η/. Εκμάθηση του λειτουργικού συστήματος UNIX/LINUX.
Αλγόριθμοι και γλώσσες προγραμματισμού.
Προγραμματισμός με τη γλώσσα C.
Υλοποίηση αλγορίθμων με τη γλώσσα προγραμματισμού C: Επίλυση
προβλημάτων για κάποιο σύστημα εκφρασμένο με μαθηματικές εξισώσεις.
Αντικείμενο Μαθήματος
![Page 3: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/3.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Τελική εξέταση: 65% και Ασκήσεις/Εργαστήριο: 35%
Προσοχή: ο βαθμός τόσο του εργαστηρίου όσο και της τελικής
εξέτασης πρέπει να είναι > 5 (50/%).
Αξιολόγηση / Βαθμολογία
• Προαπαιτούμενα:
Βασική κατανόηση της λειτουργίας ενός ηλεκτρονικού υπολογιστή.
• Σχετικά μαθήματα:
Γλώσσα προγραμματισμού Η/Υ (ΤΕΜ-102).
Αριθμητική Ανάλυση (ΤΕΜ-181).
![Page 4: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/4.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Διαλέξεις.
Εργαστήρια: Παρουσίαση παραδειγμάτων. Υλοποίηση αλγορίθμων με
τη γλώσσα προγραμματισμού C.
Σημειώσεις σε μορφή Powerpoint.
6 ώρες την εβδομάδα (θεωρία + ασκήσεις/εργαστήριο).
Διδασκαλία Μαθήματος
![Page 5: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/5.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
• Κεφάλαιο 1 – Εισαγωγικά στοιχεία: Ιστορική εξέλιξη των υπολογιστών. Hardware,
Software.
• Κεφάλαιο 2 – Το λειτουργικό σύστημα UNIX/LINUX: Το ηλεκτρονικό ταχυδρομείο και το
διαδίκτυο. Σελιδομετρητές και μηχανές ψαξίματος του διαδικτύου.
• Κεφάλαιο 3 – Αλγόριθμοι και γλώσσες προγραμματισμού : Βασικές έννοιες ενός
αλγορίθμου. Παραδείγματα.
• Κεφάλαιο 4 – Γλώσσα προγραμματισμού C: Το πρώτο μου πρόγραμμα «Hello World!»
• Κεφάλαιο 5 – Στοιχεία γλώσσας προγραμματισμού C: Μεταβλητές και τύποι
δεδομένων. Σταθερές. Αρχικοποίηση μεταβλητών.
• Κεφάλαιο 6 – Στοιχεία γλώσσας προγραμματισμού C (συνέχεια): Εντολές ελέγχου.
Επαναληπτικές διαδικασίες.
• Κεφάλαιο 7 – Υλοποίηση Αλγορίθμων με τη Γλώσσα C: Εφαρμογές σε ένα εύρος
διαφορετικών προβλημάτων.
Διάρθρωση Μαθήματος / Περιεχόμενα
![Page 6: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/6.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Για το μάθημα θα χρειαστούμε:
Βασικές γνώσεις ανάλυσης.
Βασικές γνώσεις μαθηματικής μοντελοποίησης.
Χρήση λογισμικού πακέτου (Matlab).
Τα παραπάνω θέματα θα παρουσιασθούν και μέσα στο μάθημα για
την καλύτερη κατανόηση των περιεχομένων του μαθήματος.
Διδασκαλία Μαθήματος
![Page 7: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/7.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Το εργαστήριο του μαθήματος συμπεριλαμβάνει:
Κατανόηση δομής και λειτουργίας ενός ηλεκτρονικού υπολογιστή.
Εισαγωγή – Εξοικείωση στο λειτουργικό σύστημα UNIX/LINUX.
Βασικά Υλοποίηση αλγορίθμων σε γλώσσα προγραμματισμού C.
Υλοποίηση αλγορίθμων σε γλώσσα προγραμματισμού C.
Κατά τη διάρκεια του εξαμήνου θα δοθούν (3-4) σειρές ασκήσεων.
Οι ασκήσεις είναι είτε ατομικές είτε σε ομάδες των 2 ατόμων.
Εργαστήριο Μαθήματος
![Page 8: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/8.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Μετά την ολοκλήρωση του μαθήματος θα πρέπει να έχετε κατανοήσει
Το πώς δουλεύει ένας ηλεκτρονικός υπολογιστής,
και να είστε σε θέση:
Να υλοποιείτε απλούς αλγορίθμους σε γλώσσα προγραμματισμού
C.
Να επιλύεται μαθηματικά προβλήματα χρησιμοποιώντας
προγραμματισμό.
Να αναλύεται/χρησιμοποιείται πολύπλοκα προγράμματα σε C.
Στόχοι Μαθήματος
![Page 9: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/9.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Εισαγωγικές Έννοιες
Τι είναι ένας ηλεκτρονικός υπολογιστής, Η/Υ ?
Ιστορία των Η/Υ
Αρχιτεκτονική των Η/Υ
Δυαδικό σύστημα. Γιατί οι σύγχρονοι Η/Υ το χρησιμοποιούν?
Κεφ. I: Εισαγωγή – Ιστορικά Στοιχεία
![Page 10: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/10.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Τι είναι ένας Η/Υ ?
Δυνατότητα εκτελέσεως υπολογισμών και λογικών αποφάσεων.
Πολλές (Δισεκατομμύρια?) φορές μεγαλύτερη ταχύτητα από του ανθρώπου !
Προγράμματα υπολογιστών Εντολές βάσει των οποίων ένας Η/Υ εκτελεί κάποια συγκεκριμένη εργασία
Υλικό (hardware) Ηλεκτρονικά και μηχανικά τμήματα ενός υπολογιστικού συστήματος
Λογισμικό (software) Προγράμματα και δεδομένα που εκτελούνται σε ένα Η/Υ
![Page 11: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/11.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Ιστορία των Η/Υ
~ 2000 π.χ.: Επίλυση πρακτικών υπολογιστικών προβλημάτων.
B. Pascal (~1640) Μηχανή πρόσθεσης
G. Leibniz (~1673) Μηχανή τεσσάρων βασικών πράξεων (+, -, *, /)
Joseph Babbage (~1850) Μηχανικοί υπολογιστές: Εισαγωγή, Επεξεργασία Εξαγωγή. Αναλυτική Μηχανή.
George Boole (~1850) Θεωρία μαθηματικής λογικής.
Ada Byron (~1880) Σχεδίασε προγράμματα για μηχανές Babbage(Αναλυτικές Μηχανές).
Alan Turing (~1950) Έννοια προγραμματισμού.
![Page 12: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/12.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Ιστορία των Η/Υ
(~1946) von Neumann: Έννοια αποθηκευμένου προγράμματος.
~ 1947: Εφεύρεση κρυσταλλοδιόδου (transistor)
~ 1959: Εφεύρεση ολοκληρωμένου κυκλώματος (integrated circuit, chip) .
![Page 13: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/13.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Μηχανές Babbage
Υπολογισμοί με βάση «μηχανικών» υπολογιστών κινούμενων με ατμό. Εισήγαγε τα στάδια υπολογιστικής διαδικασίας:
Εισαγωγή-Επεξεργασία-Εξαγωγή
![Page 14: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/14.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Alan Turing
Ιδέα της Προγραμματισμένης Υπολογιστικής μηχανής.
![Page 15: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/15.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
John von Neumann
Εισήγαγε την έννοια αποθηκευμένου προγράμματος, δηλαδή ένα τρόπο να χρησιμοποιεί την μνήμη του υπολογιστή για να «αποθηκεύσει» ένα πρόγραμμα μέσα στον υπολογιστή ώστε ο υπολογιστής να παίρνει εντολές από την μνήμη του.
![Page 16: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/16.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Άνθρωποι – Υπολογιστές (Human Computers)
Άνθρωποι οι οποίοι εκτελούσαν μια σειρά από αριθμητικές πράξεις.
![Page 17: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/17.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
ENIAC (1946)
Electronic Numerical Integrator and Computer (ENIAC)
18000 λυχνίες κενού. Διαστάσεις: 9 x 18 m Βάρος: 30 τόνοι.
![Page 18: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/18.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
EDVAC (1949)
Διάδοχος του ENIAC από John Eckert and John Mauchly of U Penn & John von Neumann.
Η «αποθήκευση προγράμματος» γινόταν σε επίπεδο μνήμης.
Jonh Von Neumann
Όλα τα δεδομένα και εντολές αναπαρίστανται μέσω δυαδικού κώδικα και αποθηκεύονται στην μνήμη του υπολογιστή.
Ο υπολογιστής δεν διακρίνει δεδομένα από εντολές.
![Page 19: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/19.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Ιστορικά Στοιχεία: Συνέχεια
1947 William Shockley invents the transistor, a solid-state, reliable version of
the vacuum tube.
1954 Texas Instruments announces the start of commercial production of
silicon transistors.
1969 Intel’s Ted Hoff designs a chip that can follow instructions and perform
simple functions on data.
1981 IBM introduces its Personal Computer (PC).
IBM PC5150
![Page 20: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/20.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
Ιστορικά Στοιχεία: Συνέχεια
1984 Apple introduces the Macintosh, a computer using a mouse and graphic
interface.
1985 First retail version of Microsoft Windows on November 20,1985,
128 KBRAM64 KB ROM3.5" 400 KB floppy drive512 x 342 pixel , b&wmonitorA mouse A few applications (MacWrite, MacPaint)
![Page 21: Εισαγωγή στους Ηλεκτρονικούς Υπολογιστέςusers.tem.uoc.gr/~vagelis/Courses/TEM101/HY_Ch1... · 2012-10-22 · Υλοποίηση αλγορίθμων](https://reader030.vdocuments.net/reader030/viewer/2022040108/5f317f4ab89500670617e816/html5/thumbnails/21.jpg)
Εισαγωγή στους Η/Υ 2012/13, Κεφάλαιο 1: Εισαγωγή
«Η Γλώσσα Προγραμματισμού C (The C Programming Language)» των Brian W. Kernighan και Dennis Μ. Ritchie, Εκδόσεις Κλειδάριθμος.
Η βιβλιογραφία βρίθει κυριολεκτικά με βιβλία για την εκμάθηση της γλώσσας και στο διαδίκτυο μπορεί να βρει κανείς χιλιάδες οδηγούς εκμάθησης (tutorials).
Εισαγωγή στο λειτουργικό σύστημα UNIX/LINUX: www.ee.surrey.ac.uk/Teaching/Unix/
«Η τέχνη και η επιστήμη της C», Eric S. Roberts, Εκδόσεις Κλειδάριθμος.
Βιβλιογραφία