Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές http://courseware.mech.ntua.gr/ml23021/ 2 ο Μάθημα Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ E-mail: leo@mail.ntua.gr URL: http://users.ntua.gr/leo 1
Κεφάλαιο 1+2 Εισαγωγικές Έννοιες Τι είναι ένας Η/Υ? Τι είναι «αλγόριθμος»? Γιατί οι σύγχρονοι Η/Υ χρησιμοποιούν το δυαδικό σύστημα? 2
Δηλαδή, Τι είναι ένας Η/Υ? «Ένας Η/Υ είναι μία μηχανή η οποία, υπό τον έλεγχο ενός αποθηκευμένου προγράμματος που υλοποιεί κάποιο αλγόριθμο επεξεργασίας δεδομένων, δέχεται και επεξεργάζεται αυτόματα τα δεδομένα και παρέχει τα αποτελέσματα αυτής της επεξεργασίας» ΔΕΔΟΜΕΝΑ (data) Η/Υ ΠΛΗΡΟΦΟΡΙΑ (information) «ακατέργαστα» δεδομένα ΕΠΕΞΕΡΓΑΣΙΑ μέσω κατάλληλου αλγορίθμου (προγράμματος) «δομημένα» δεδομένα 3
Τι είναι ένας Η/Υ? Γλώσσες & Προγράμματα Εφαρμογών Γλώσσες Προγραμματισμού Λογισμικό: Σύνολο προγραμμάτων που μπορούν να εκτελεσθούν από τον Η/Υ Λειτουργικό Σύστημα Γλώσσα Μηχανής ΥλικόΤεχνικό: Σύνολο συσκευών που απαρτίζουν τον Η/Υ Μικρολειτουργίες & Μικροπρογραμματισμός Ψηφιακή Λογική 4
Κεφάλαιο 1+2 Εισαγωγικές Έννοιες Τι είναι ένας Η/Υ? Τι είναι «αλγόριθμος»? Γιατί οι σύγχρονοι Η/Υ χρησιμοποιούν το δυαδικό σύστημα? 5
Τι είναι Αλγόριθμος? Απλή Διατύπωση: ακριβής περιγραφή βημάτων που απαιτούνται για να επιτευχθεί μία εργασία (π.χ. είναι η συνταγή μαγειρικής αλγόριθμος;) Πιο Αυστηρή Διατύπωση: Διατεταγμένο σύνολο σαφών ( νόηση) και εκτελέσιμων βημάτων που ορίζουν μία διαδικασία με τέλος Εύρεση Μικρότερου Στοιχείου Αλγόριθμος Software 6
Θέμα 5: Υπολογισμός φόρου εισοδήματος. Δίνεται ο παρακάτω απλοποιημένος πίνακας φορολογικών συντελεστών. Δηλαδή, από το συνολικό εισόδημα τα πρώτα 5.000 δεν φορολογούνται καθόλου, τα επόμενα 7.000 φορολογούνται με 10%, τα επόμενα 14.000 φορολογούνται με 25%, τα επόμενα 34.000 φορολογούνται με 38% και όλα τα υπόλοιπα με 40%. Άρα σε εισόδημα 28.000 ευρώ θα αντιστοιχεί φόρος (28.000-26.001)*0.38+(26.000-12.001)*0.25+(12.000-5.001)*0.1 Α (2.0) Χρησιμοποιώντας τα παρακάτω blocks εντολών, να υλοποιηθεί διάγραμμα ροής που θα διαβάζει το εκάστοτε εισόδημα σε μια μεταβλητή ΕΙS, θα υπολογίζει και θα τυπώνει τον προβλεπόμενο φόρο. Εισόδημα Φορολογικός Συντελεστής (%) 0 -> 5.000 0 5.001 -> 12.000 10 12.001 -> 26.000 25 26.001 -> 60.000 38 60.000 < 40
Β (2.0) Χρησιμοποιώντας τις παρακάτω εντολές να υλοποιηθεί συνάρτηση Matlab που θα δέχεται σαν είσοδο το εκάστοτε εισόδημα, θα υπολογίζει και θα επιστρέφει τον προβλεπόμενο φόρο.
Κεφάλαιο 1+2 Εισαγωγικές Έννοιες Τι είναι ένας Η/Υ? Τι είναι «αλγόριθμος»? Γιατί οι σύγχρονοι Η/Υ χρησιμοποιούν το δυαδικό σύστημα? 9
Γιατί οι σύγχρονοι Η/Υ χρησιμοποιούν το δυαδικό σύστημα? Πρόβλημα: Να ευρεθεί ο αριθμός 10 10 10 όπου α10, β10 R (πραγματικοί αριθμοί εκφρασμένοι στο δεκαδικό σύστημα) και f { +,,, } μία αριθμητική πράξη. Διαδικασία Επίλυσης: A2 = δ ( α10 ) Εύρεση των δυαδικών αριθμών που αντιστοιχούν στα δεδομένα B2 = δ ( β10 ) Υλοποίηση της αριθμητικής πράξης αλγορίθμου g λογικών συναρτήσεων Εύρεση του δυαδικού αποτελέσματος Εύρεση του δεκαδικού αντιστοίχου γ αποτελέσματος γ = f α, β f ( ) μέσω ενός Γ = g ( A, B ) 2 2 2 1 10 = δ ( Γ2 ) του 10
Γιατί οι σύγχρονοι Η/Υ χρησιμοποιούν το Δηλαδή δυαδικό σύστημα? gabγαβγf δ ( ) 1 δ ( συνέχεια) Ερώτημα: Γιατί πρέπει να μεταβούμε στο δυαδικό σύστημα και μετά να επιστρέψουμε πίσω? Απάντηση: Η ηλεκτρονική υλοποίηση των λογικών πράξεων είναι πολύ πιο εύκολη και αξιόπιστη απ ότι αυτή των αριθμητικών πράξεων ( ) ( ) δ 11
Κωδικοποίηση & Αποκωδικοποίηση Αριθμών & Χαρακτήρων Αποκωδικοποίηση Κωδικοποίηση Συστήματα Αρίθμησης το Δυαδικό Μετατροπή από το ένα σύστημα στο άλλο Η πρόσθεση & η αφαίρεση στο Δυαδικό H αφαίρεση στο Δυαδικό Παράσταση Αρνητικών 12
Το Δυαδικό σύστημα επιτρέπει την ηλεκτρονική υλοποίηση Boole : αν δύο αριθμοί κωδικοποιηθούν (μετατραπούν) στο δυαδικό σύστημα τότε η εκτέλεση μαθηματικών πράξεων (+, *, -, ) ή η εξέταση (πιστοποίηση) λογικών σχέσεων (>,, <,, =,...) μεταξύ τους, μπορούν να υλοποιηθούν με χρήση των βασικών λογικών τελεστών (ΑΝD, OR, NOT), και μόνο. 13
Κωδικοποίηση - Αποκωδικοποίηση Δεδομένα Εισόδου Κωδικοποίηση Δεδομένα Εισόδου σε Δυαδική Μορφή Επεξεργασία Δεδομένα Εξόδου σε Δυαδική Μορφή Αποκωδικοποίηση Δεδομένα Εξόδου Κωδικοποίηση: Μετάβαση σε ηλεκτρονικά επεξεργάσιμη πληροφορία Αποκωδικοποίηση: Μετάβαση σε φυσικά επεξεργάσιμη διαδικασία 14
Συστήματα Αρίθμησης Παρατηρήστε ότι ( ) 10 78532.26 = 78532.26 = =7*10 + 8*10 + 5*10 + 3*10 + 2*10 + 2*10 + 6*10 4 3 2 1 0 1 2 Αυτό γενικεύεται ως. ( n 1 n 2... 1 0 1 D D D D D 2 D... m D) = D * B +... + D* B + D* B +... + D * B n 1 n 1 0 0 1 1 m m όπου D : Digits = ψηφία, B : Base = βάση ΜSD (Most Significant Digit) LSD(Least Significant Digit) ΤΑΞΗ ΨΗΦΙΟΥ B = 15
Συστήματα Αρίθμησης Δεκαδικό Οκταδικό Δυαδικό 9 0 1 2 3 3 4 5 6 7 2 3 4 5 6 7 8 9 0 1 0 1 2 1 2 3 2 3 4 6 7 0 1 0 1 0 D : Digits = ψηφία B : Base = βάση :10 1,2,3,4,5,6,7,8,9,0 D : Digits = ψηφία: 4 B : Base = βάση :8 1,2,3,4,5,6,7,0 D : Digits = ψηφία: 4 B : Base = βάση :2 0,1 16
Συστήματα Αρίθμησης Δεκαδικό σύστημα (Β=10, D {0,1,2,3,4,5,6,7,8,9} ) ΤΑΞΕΙΣ ΨΗΦΙΩΝ: 0 D:Μονάδες (10 0 ), 1 D:Δεκάδες (10 1 ), 100δες.. Δυαδικό σύστημα (Β=2, D {0, 1} ) ΤΑΞΕΙΣ ΨΗΦΙΩΝ: 0 D:Μονάδες (2 0 ), 1 D:Δυάδες (2 1 ), 4άδες(2 2 ) Οκταδικό σύστημα (Β=8, D {0, 1,2,3,4,5,6,7} ) ΤΑΞΕΙΣ ΨΗΦΙΩΝ: 0 D:Μονάδες (8 0 ), 1 D:Οκτάδες (8 1 ), 64αδες(8 2 ) Δεκαεξαδικό σύστημα (Β=16, D {0,1,2,3,4,5,6,7,8,9,Α,B,C, D, E, F} ) ΤΑΞΕΙΣ ΨΗΦΙΩΝ: 0 D:Μονάδες (16 0 ), 1 D:Δεκαεξάδες (2 1 ), 256δες (16 2 ) 17
Δυαδικό σύστημα There are 10 types of people in the world: Those who understand binary, and those who don't
Συστήματα Αρίθμησης Υπάρχουν αριθμητικά συστήματα που δεν ακολουθούν την έννοια της τάξης ψηφίου? Ρωμαϊκή Αρίθμηση Εμπειρικά μετρητικά Συστήματα π.χ. 1 foot = 12 inches 1 yard = 3 feet 1 mile = 1760 yards 19