Εισαγωγή στο μάθημα και ιστορική αναδρομή
Διομήδης Σπινέλλης
Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας
Οικονομικό Πανεπιστήμιο Αθηνών
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.
 
Πηγές στο διαδίκτυο
Θέματα για σκέψη
-  
Πόσοι ηλεκτρονικοί υπολογιστές υπάρχουν στο Πανεπιστήμιο;
Πως χρησιμοποιούνται;
(Μην ξεχάσετε τους υπολογιστές που αποτελούν τμήματα συσκευών ή
ολοκληρωμένων εφαρμογών.)
 - 
Ποιά είναι η σχέση της πληροφορικής με τη διοικητική επιστήμη;
 - 
Ποιά είναι η σχέση της διοικητικής επιστήμης με την πληροφορική;
 - 
Πως συνδέονται οι εφαρμογές της πληροφορικής με την παραγωγικότητα
και την ανεργία;