Εισαγωγή στο μάθημα και ιστορική αναδρομή
Διομήδης Σπινέλλης
Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας
Οικονομικό Πανεπιστήμιο Αθηνών
dds@aueb.gr
Καλώς ήρθατε
Πληροφοριακές και Τηλεπικοινωνιακές Τεχνολογίες
Τι περιλαμβάνει το μάθημα
- Εισαγωγή στο μάθημα και ιστορική αναδρομή
- Παράσταση δεδομένων
- Δομικά στοιχεία υπολογιστών
- Βασικά στοιχεία αρχιτεκτονικής
- Προγραμματισμός σε επίπεδο μηχανής
- Δίκτυα δεδομένων, το διαδίκτυο, εφαρμογές
- Λειτουργικά συστήματα
- Αλγόριθμοι, δεδομένα και διαδικασίες
- Γλώσσες και εργαλεία προγραμματισμού
- Παραλληλία και προγραμματιστικά παραδείγματα
- Τεχνολογία λογισμικού
- Στοιχεία θεωρητικής πληροφορικής
- Εφαρμοσμένη πληροφορική
- Η γλώσσα Java, το πρώτο πρόγραμμα
- Υπολογισμοί με μεταβλητές, είσοδος και έξοδος
- Τελεστές σύγκρισης, λογικής και επαναλήψεις
- Προγραμματισμός με χαρακτήρες, αποφάσεις
- Πρόσθετες δομές ελέγχου: switch for break continue
- Ορισμός συναρτήσεων
- Προγραμματισμός με αντικείμενα
- Πίνακες
- Η βιβλιοθήκη της Java
Τρόπος διδασκαλίας
- Συμμετοχή
- Ερωτήσεις
- Ασκήσεις
- Φροντιστήριο
- Εργαστήριο
- Ανεξάρτητη μελέτη
Οι σημειώσεις
Βιβλία του μαθήματος
Θα διανεμηθούν τα βιβλία:
- Ε. Α. Παπαθανασίου. Στοιχεία Υπολογιστικών Συστημάτων. Εκδόσεις Ευγ. Μπένου, Αθήνα 1998.
- Γ. Λιακέας. Εισαγωγή στην Java. Κλειδάριθμος, Αθήνα, 2000.
'Αλλα βιβλία σχετικά με το μάθημα είναι:
- Η. Λυπιτάκης, Ο σύγχρονος κόσμος των Υπολογιστών. Λυπιτάκης, 1997.
- Μ. Μπεκάκος Εισαγωγή στην πληροφορική. Οικονομικό Πανεπιστήμιο Αθηνών, 1998.
- L. Goldschlager and A. Lister. Εισαγωγή στη σύγχρονη επιστήμη των υπολογιστών. Διάυλος, 1994.
- Peter Rechenberg. Εισαγωγή στην Πληροφορική. Κλειδάριθμος, 1992.
- K. N. King. Java Programming: From the Beginning. W.W. Norton & Company, 2000.
- Ron White, Timothy Downs, Stephen Adams. How Computers Work. 5th edition, Que, 1999.
- J. Glenn Brookshear. Computer Science: an overview. 8th edition. Addison Wesley Longman, 2004.
Βαθμολογία
Ο τελικός βαθμός κάθε φοιτητή θα βασίζεται σε 2 κριτήρια:
- Στην απόδοση του στις υποχρεωτικές ασκήσεις
- Στις τελικές γραπτές εξετάσεις
Απαραίτητη προϋπόθεση για να περάσει ο φοιτητής το μάθημα είναι η απόδοσή του σε κάθε κατηγορία να καλύπτει τουλάχιστον τη βάση.
Η συμμετοχή κάθε κριτηρίου στη διαμόρφωση του τελικού βαθμού είναι περίπου ως εξής:
- Ασκήσεις
- 30%
- Τελικές Εξετάσεις
- 70%
Το σημερινό μάθημα
- Πρόδρομοι της πληροφορικής
- Οι πρώτες προσπάθειες
- Θεωρητικό υπόβαθρο
- Τεχνολογική εξέλιξη
- Η επιστήμη της πληροφορικής
- Γενική βιβλιογραφία
Πρόδρομοι της πληροφορικής
- ´Ανθρωπος: ο πρώτος υπολογιστής
- Το δεκαδικό (decimal) σύστημα και οι τέσσερεις πράξεις
- Ο αλγόριθμος του Ευκλείδη για το ΜΚΔ
- Μηχανικά βοηθήματα
- Πέτρες
- ´Αβακας
- Ο αστρολάβος των Αντικηθύρων - διαφορικά γρανάζια
- Αριθμομηχανές
- Wilhelm Schickard (1592-1635)
Συνεργάστηκε με τον Kepler, μηχανή που άθροιζε και πολλαπλασίαζε (σε
πολλαπλά βήματα) αριθμούς
έξι ψηφίων.
- Blaise Pascal (1632-1662)
Κατασκεύασε πάνω από 30 αθροιστικές μηχανές, η αφαίρεση γίνονταν
με τη μέθοδο του συμπληρώματος.
- Gottfried Leibniz (1646-1716)
Προσπάθεια για πολλαπλασιασμό
- Αποθηκευμένα προγράμματα
- Λατέρνες και μηχανικά πιάνα
- Ελεγχόμενοι αργαλιοί (Jacquard 1805)
- Η διαφορική μηχανή του Charles Babbage (1792-1871)
- Η αναλυτική μηχανή του Charles Babbage
- Διάτρητες κάρτες (punched cards)
(Hollerith 1886)
Ο αλγόριθμος ΜΚΔ του Ευκλείδη
Θέλουμε να βρούμε το μέγιστο κοινό διαιρέτη των Α και Β, Α > Β
(Π.χ. ΜΚΔ των 18 και 24 είναι το 6, ΜΚΔ των 378 και 216 είναι το 54)
- Διαιρούμε ακέραια το Α με το Β και έχουμε ένα υπόλοιπο Υ
- Αν το Υ είναι 0 τότε ο Β είναι ο ΜΚΔ
- Αν το Υ δεν είναι 0 τότε υπολογίζουμε ως ΜΚΔ τον ΜΚΔ του Β και Υ
Ο αστρολάβος των Αντικηθύρων
Μηχανικός υπολογιστής του William von Schickard
Η διαφορική μηχανή του Charles Babbage
Η αναλυτική μηχανή του Charles Babbage
Διάτρητη κάρτα (1950)
Η βάση της διαφορικής μηχανής
Υπολογισμοί με πολυώνυμα
- Πολλές συναρτήσεις εκφράζονται ως πολυώνυμα
- cos(x) = 1 - x2/2! + x4/4! - x6/6! + ... + (-1)r*x(2*r)/(2*r)!
- ln(1 + x) = x - x2/2 + x3/3 - x4/4 + ... + (-1)(r+1)*xr/r
- Πολυώνυμα βαθμού ν έχουν σταθερές διαφορές τάξεως ν
f(x) = x2
1
3
4 2
5
9 2
7
16 2
9
25 2
11
36
f(x) = 3x2 + 2x + 5
10
11
21 6
17
38 6
23
61 6
29
90
Το παράδειγμα με τα ρολόγια
Clock A Clock B Clock C
1 3 2
+3 +2
4 5 2
+5 +2
9 7 2
+7 +2
16 9 2
Ακαδημαϊκές προσπάθειες Η/Υ
- Colossus Mark I (1943)
Σχεδιασμένο για την εκτέλεση λογικών πράξεων
- Harvard Mark I 1944 (relay computer)
- ENIAC (1946-1955) Mauchly και Eckert - Moore School of
Electrical Engineering, University of Pensylvania
- EDVAC (1946, Cambridge) και EDSAC (1949, Moore School) Αποθηκευμένο πρόγραμμα
- Πανεπιστήμιο του Machester (1949)
- Whirlwind (1950)
Έργο για λογαριασμό του αμερικανικού ναυτικού.
Οθόνη CRT, 20000 εντολές / δευτερόλεπτο.
ENIAC (1946-1955)
Colossus Mark I (1943)
Ο πίνακας οργάνων του υπολογιστή Whirlwind (1947)
Πρώτοι εμπορικοί Η/Υ
- IBM
- Σειρά 600 (1935) - "multiplying punch" - προγραμματισμός με πλακέτες
- SSEC (ηλεκτρομηχανικό: 13000 λυχνίες, 23000 ρελέ) (1948)
- Σειρά 700 (1952) (ενοικίαση προς $1500/ μήνα) - FORTRAN
- UNIVAC (Eckert/Mauchly 1950)
- Raytheon και Honeywell
- RCA
- Burroughs
Ένα από τα 4000 αρθρώματα του IBM 704
Θεωρητικό υπόβαθρο
- Kurt Goedel. On Formally Undecidable Propositions in Principia
Mathematica and Related Systems (1931).
- Alan M. Turing. On Computable Numbers with an Application to the
Entscheidungsproblem (1936)
- Norbert Wiener. Cybernetics: The study of control and
communication in the animal and the machine (1947)
- C. E. Shannon. The Mathematical Theory of Communication (1948)
Τεχνολογική εξέλιξη
Από αριστερά:
- λυχνία,
- τρανζίστορ,
- μνήμες EPROM TTL, επεξεργαστές (1980),
- επεξεργαστής και άρθρωμα μνήμης RAM 1995
Μνήμη φερριτικού πυρήνα
Λογικό κύκλωμα με λυχνία (IBM Pluggable Units - 1950)
Λογικό κύκλωμα με τρανζίστορ (1960)
Εξέλιξη επεξεργαστών της Intel (1978-1999)
Η επιστήμη της πληροφορικής
- Υλικό
- Λογικά κυκλώματα και μνήμες
- Επικοινωνίες και μονάδες εισόδου / εξόδου
- Ολοκληρωμένα κυκλώματα
- Οργάνωση συστημάτων
- Αρχιτεκτονικές επεξεργαστών
- Δίκτυα
- Απόδοση
- Λογισμικό
- Προγραμματισμός
- Τεχνολογία λογισμικού
- Λειτουργικά συστήματα
- Δεδομένα
- Δομές δεδομένων
- Θεωρία κωδικοποίησης και πληροφορίας
- Αρχεία
- Θεωρία υπολογιστών
- Υπολογισμοί από αφηρημένες μηχανές
- Ανάλυση αλγορίθμων
- Λογική και ερμηνεία προγραμμάτων
- Μαθηματική λογική και φορμαλιστικές γλώσσες
- Μαθηματικά της πληροφορικής
- Αριθμητική ανάλυση
- Διακριτά μαθηματικά
- Πιθανότητες και στατιστική
- Μαθηματικό λογισμικό
- Πληροφοριακά συστήματα
- Αρχές και μοντέλα
- Διαχείριση βάσεων δεδομένων
- Αποθήκευση και ανάκτηση πληροφοριών
- Εφαρμογές
- Επικοινωνία με τον άνθρωπο
- Μεθοδολογίες πληροφορικής
- Αλγεβρική επεξεργασία
- Τεχνητή νοημοσύνη
- Γραφικά
- Επεξεργασία εικόνας
- Επεξεργασία σημάτων
- Προσομοίωση και μοντελοποίηση
- Επεξεργασία κειμένου
- Εφαρμογές
- Γραφείου
- Φυσικών επιστημών και μηχανικού
- Βιολογικών και ιατρικών επιστημών
- Κοινωνικών και ψυχολογικών επιστημών
- Τέχνης και ανθρωπιστικών επιστημών
- Σχεδιασμός με υπολογιστή
- Πληροφορική και κοινωνία
- Η βιομηχανία υπολογιστών
- Ιστορία της πληροφορικής
- Πληροφορική και εκπαίδευση
- Πληροφορική και κοινωνία
- Νομικές διαστάσεις
- Το επάγγελμα του επιστήμονα πληροφορικής
(Βασισμένο στο σύστημα ταξινόμησης ACM Computing Reviews.)
Γενική βιβλιογραφία
- ACM.
ACM
Turing Award lectures.
Addison-Wesley, 1987.
- Alfred V. Aho, Ravi Sethi,
and Jeffrey D. Ullman.
Compilers, Principles, Techniques, and Tools.
Addison-Wesley, 1985.
- F. P. Brooks.
The
Mythical Man Month.
Addison-Wesley, 1975.
- Communications of the ACM.
Published by the Association for Computing Machinery.
- Computing surveys.
Published by the Association for Computing Machinery.
- Peter J. Denning
and Robert M. Metcalfe, editors.
Beyond
Calculation: The Next Fifty Years of Computing.
Springer Verlag, 1997.
- John L. Hennessy
and David A. Patterson.
Computer Architecture: A Quantitative Approach.
Morgan Kaufmann Publishers, 1990.
- Douglas R. Hofstadter.
Goedel, Escher, Bach: an Eternal Golden Braid.
Penguin Books, 1979.
- Douglas R. Hofstadter.
Metamagical Themas: Questing for the Essence of Mind and Pattern.
Penguin Books, 1986.
- Andrew Hunt and David
Thomas.
The
Pragmatic Programmer: From Journeyman to Master.
Addison Wesley Longman, 2000.
- Computer.
Published by the Institute of Electrical and Electronics Engineers Computer
Society.
- Brian W. Kernighan
and Rob Pike.
The
UNIX Programming Environment.
Prentice-Hall, 1984.
- Brian W. Kernighan
and Rob Pike.
The
Practice of Programming.
Addison-Wesley, 1999.
- Brian W. Kernighan
and P. J. Plauger.
The
Elements of Programming Style.
McGraw-Hill, second edition, 1978.
- Donald E. Knuth.
The Art of Computer Programming, volume 1 / Fundamental
Algorithms.
Addison-Wesley, second edition, 1973.
- Donald E. Knuth.
The
Art of Computer Programming, volume 3 / Sorting and Searching.
Addison-Wesley, 1973.
- Donald E. Knuth.
The
Art of Computer Programming, volume 2 / Seminumerical Algorithms.
Addison-Wesley, second edition, 1981.
- Peter G. Neumann.
Computer Related Risks.
Addison-Wesley, 1995.
- Donald A. Norman.
The
Invisible Computer.
MIT Press, 1998.
- Roger Penrose.
The
Emperor's new mind concerning computers, minds and the laws of
physics.
Oxford University Press, 1989.
- Charles Petzold.
Code: The Hidden Language of Computer Hardware and Software.
Microsoft Press, Redmond, Washington, USA, 1999.
- Raghu
Ramakrishnan and Johannes Gehrke.
Database Management Systems.
McGraw-Hill, second edition, 2000.
- Elaine Rich.
Artificial Intelligence.
McGraw-Hill, 1983.
- Bruce Schneier.
Secrets & Lies: Digital Security in a Networked World.
Wiley Computer Publishing, 2000.
- Ravi Sethi.
Programming Languages: Convepts and Constructs.
Addison-Wesley, 1989.
- Ian Sommerville.
Software Engineering.
Addison-Wesley, sixth edition, 2001.
- Andrew S. Tanenbaum.
Operating Systems: Design and Implementation.
Prentice-Hall, 1987.
- Andrew S. Tanenbaum.
Computer Networks.
Prentice-Hall, second edition, 1988.
- Michael A. Williams.
A
History of Computing Technology.
IEEE Computer Society Press, 1997.
Γενικές πηγές στο διαδίκτυο
Βιβλιογραφία
- Α. Λυπιτάκης
Ο σύγχρονος κόσμος των υπολογιστών. σ. 1-4
1997.
- Μ. Μπεκάκος Εισαγωγή στην πληροφορική. Κεφάλαιο 1. Οικονομικό Πανεπιστήμιο Αθηνών 1998.
- Ε. Παπαθανασίου
Στοιχεία υπολογιστικών συστημάτων. σ. 25-42
Εκδόσεις Μπένου 1998.
- Peter Rechenberg.
Εισαγωγή στην Πληροφορική. σ. 14-30
Κλειδάριθμος, 1992.
- Χρήστος Δ. Λάζος.
Ο Υπολογιστής των Αντικυθήρων.
Αίολος 1994.
- J. Glenn Brookshear.
Computer Science, pages 6–10.
Addison-Wesley, sixth edition, 2000.
- Aaron Finerman.
The CR classification system.
ACM Computing Reviews, pages 4–19, January 1992.
- Roger Hunt and John
Shelley.
Computers and Common Sense.
Prentice Hall, fourth edition, 1988.
- IEEE annals of the history of
computing.
Published by the Institute of Electrical and Electronics Engineers Computer
Society.
- J.A.N. Lee.
Computer pioneers.
IEEE Computer Society Press, 1995.
- Brian Randell.
The Origins of Digital Computers.
Springer Verlag, Berlin, 1973.
- Eric Raymond.
The
New Hacker's Dictionary.
MIT Press, 1991.
- Saul Rosen.
Electronic computers: A historical survey.
ACM Computing Surveys, 1(1):7–36, March 1969.
- Joseph Weizenbaum.
Computer Power and Human Reason.
Pelican books, 1984.
- Michael A. Williams.
A
History of Computing Technology.
IEEE Computer Society Press, 1997.
Πηγές στο διαδίκτυο
Θέματα για σκέψη
-
Πόσοι ηλεκτρονικοί υπολογιστές υπάρχουν στο Πανεπιστήμιο;
Πως χρησιμοποιούνται;
(Μην ξεχάσετε τους υπολογιστές που αποτελούν τμήματα συσκευών ή
ολοκληρωμένων εφαρμογών.)
-
Ποιά είναι η σχέση της πληροφορικής με τη διοικητική επιστήμη;
-
Ποιά είναι η σχέση της διοικητικής επιστήμης με την πληροφορική;
-
Πως συνδέονται οι εφαρμογές της πληροφορικής με την παραγωγικότητα
και την ανεργία;