Εισαγωγή στην επιστήμη των υπολογιστών ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ και Μετατροπές Αριθμών 1
Αριθμητικό Σύστημα Ορίζει τον τρόπο αναπαράστασης ενός αριθμού με διακεκριμένα σύμβολα Ένας αριθμός αναπαρίσταται διαφορετικά σε κάθε σύστημα, π.χ. (2Α) 16, (52) 8 Περιορισμένος αριθμός συμβόλων σε κάθε σύστημα Επανάληψη συμβόλων Δύο κατηγορίες αριθμητικών συστημάτων Θεσιακά Μη θεσιακά
Μη Θεσιακό Αριθμητικό Σύστημα Τα διαφορετικά σύμβολα έχουν πάντα την ίδια τιμή. Για παράδειγμα στο Λατινικό Αριθμητικό Σύστημα, τα διάφορα γράμματα έχουν πάντα την ίδια τιμή. Π.χ. Το γράμμα Ι έχει πάντα την τιμή 1 To γράμμα V έχει πάντα την τιμή 5 Έτσι Ι = 1, ΙΙ = 2, ΙΙΙ = 3, V = 5 ΙV = 4, διότι το Ι πριν από το V δηλώνει ότι αφαιρείς 1 από το 5 Η θέση του συμβόλου καθορίζει κανόνες για χειρισμό των συμβόλων, όχι την τιμή των συμβόλων (π.χ. ένας κανόνας είναι ότι αν ένα σύμβολο με μικρότερη τιμή βρίσκεται πριν από ένα σύμβολο με μεγαλύτερη τιμή, τότε η μικρότερη τιμή αφαιρείται από τη μεγαλύτερη. Η τιμή των συμβόλων είναι πάντα η ίδια. Το Ι είναι πάντα 1 και το V είναι πάντα 5, κλπ. Τιμές Συμβόλων στο Λατινικό Σύστημα Σύμβολο Ι V X L C D M Τιμή 1 5 10 50 100 500 1000 3
Θεσιακό Αριθμητικό Σύστημα Η θέση ενός συμβόλου μέσα σ ένα αριθμό καθορίζει την τιμή του. Π.χ. το «1» στην πρώτη θέση από δεξιά ενός δεκαδικού αριθμού, δηλώνει μιά μονάδα. το «1» στην Τρίτη θέση από δεξιά ενός δεκαδικού αριθμού, δηλώνει 100 μονάδες. Ο αριθμός ± (S k- 1 S 2 S 1 S 0,S - 1 S - 2 S l ) b έχει την τιμή n = ± (S k- 1 x b k- 1 + + S 2 x b 2 + S 1 x b 1 + S 0 x b 0 ) + (S - 1 x b - 1 +S - 2 x b - 2 +.+ S - l x b - l ) S: το σύνολο των συμβόλων b: η βάση που ισούται με το συνολικό αριθμό των συμβόλων S k και S l : τα σύμβολα για το ακέραιο και το κλασματικό μέρος του αριθμού αντίστοιχα Ο εκθέτης του b μπορεί να είναι από 0 έως k- 1 και από - 1 έως - l
Ακέραιοι Ολόκληροι αριθμοί χωρίς κλασματικό μέρος Αναπαρίστανται ως ± (S k- 1 S 2 S 1 S 0 ) b Η τιμή υπολογίζεται ως Ν = ± (S k- 1 x b k- 1 + + S 2 x b 2 + S 1 x b 1 + S 0 x b 0 ) Όπου S k είναι ένα ψηφίο, b είναι η βάση και k το πλήθος των ψηφίων, π.χ. Αν η βάση είναι το 10, τότε η τιμή είναι υπολογίζεται ως εξής: Ν = ± (S k- 1 x 10 k- 1 + + S 2 x 10 2 + S 1 x b 1 + S 0 x 10 0 )
Μέγιστη Τιμή ενός ακεραίου στο Δεκαδικό Σύστημα Η μέγιστη τιμή N ενός ακεραίου που μπορεί να αναπαρασταθεί με k ψηφία είναι Ν max = 10 k 1 π.χ. αν k = 5 => Ν max = 10 5 1 = 99.999
Πραγματικοί Αριθμοί Αριθμοί με κλασματικό μέρος Αναπαρίστανται ως ± (S k- 1 S 2 S 1 S 0,S - 1 S - 2 S l ) b Η υποδιαστολή ξεχωρίζει το κλασματικό μέρος από το ακέραιο Η τιμή τους υπολογίζεται ως εξής: Ν = ± (S k- 1 x b k- 1 + + S 2 x b 2 + S 1 x b 1 + S 0 x b 0 ) +(S - 1 x b - 1 +S - 2 x b - 2 +.+ S - l x b - l ) Όπου S k είναι ένα ψηφίο, b είναι η βάση και k το πλήθος των ψηφίων στο ακέραιο μέρος και l το πλήθος των ψηφίων στο κλασματικό μέρος.
Συστήματα Αρίθμησης Τα συνηθέστερα αριθµητικά συστήµατα είναι το δεκαδικό και αυτά που αποτελούν δυνάµεις του δύο: n Δεκαδικό σύστηµα Βάση το 10, Σύµβολα: 0,1,2,3,4,5,6,7,8,9 n Δυαδικό σύστηµα Βάση το 2, Σύµβολα: 0,1 n Οκταδικό σύστηµα Βάση το 8, Σύµβολα: 0,1,2,3,4,5,6,7 n Δεκαεξαδικό σύστηµα Βάση: το 16, Σύµβολα: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 8
Δεκαδικό και Δυαδικό Σύστημα Δύο κυρίαρχα συστήματα στο χώρο των υπολογιστών Δεκαδικό: Η βάση του συστήματος είναι το 10 αναπτύχθηκε τον 8 ο αιώνα από Άραβες μαθηματικούς, πρώτη χρήση από αρχαίους Αιγύπτιους, βελτίωση από Βαβυλώνιους Δυαδικό: Η βάση του συστήματος είναι το 2 Ακολουθεί περιγραφή αυτών των συστημάτων πριν παρουσιάσουμε πως αναπαρίστανται μέσα σε ένα υπολογιστή 9
Δεκαδικό Σύστημα b = 10 S = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} Στο δεκαδικό σύστημα ένας αριθμός γράφεται ως ± (S k- 1 S 2 S 1 S 0, S - 1 S - 2 S l ) 10 Χάριν απλότητας παραλείπουμε τις παρενθέσεις, τη βάση και το πρόσημο (αν ο αριθμός είναι θετικός). Π.χ. Γράφουμε 25,5 αντί για +(25,5) 10 οι υπολογιστές δεν αποθηκεύουν τα πρόσημα, αλλά αποθηκεύουν διαφορετικά τους θετικούς και αρνητικούς αριθμούς θα δούμε αργότερα πως
Δεκαδικό Σύστηµα 11
Θέσεις και τιµές θέσης για έναν ακέραιο στο δεκαδικό σύστηµα Παράδειγµα 1 Θέσεις και Τιμές θέσης στο δεκαδικό σύστημα για τον ακέραιο +224 2 1 0 Θέση Τιμή θέσης 10^2 10^1 10^0 Αριθμός 2 2 4 N = + 2 x 10 2 + 2 x 10 1 + 4 x 10 0 Τιμές 200 20 4 Το ψηφίο 2 στη θέση 1 έχει τιμή 20. Το ίδιο ψηφίο στη θέση 2 έχει την τιμή 200. Το σύμβολο + συνήθως παραλείπεται
Θέσεις και τιµές θέσης για έναν ακέραιο στο δεκαδικό σύστηµα Παράδειγµα 2 Θέσεις και Τιμές θέσεων στο δεκαδικό σύστημα για τον ακέραιο - 7508 3 2 1 0 Θέσεις 10^3 10^2 10^1 10^0 Τιμές θέσης 7 5 0 8 Αριθμός N = - 7 x 10 3 + 5 x 10 2 + 0 x 10 1 + 8 x 10 0 Τιμές 7000 500 0 8
Θέσεις και τιμές θέσης για έναν πραγματικό στο δεκαδικό σύστημα Παράδειγμα Θέσεις και Τιμές θέσεων στο δεκαδικό σύστημα για τον πραγματικό αριθμό +24,13 1 0-1 -2 Θέσεις 10^1 10^0 10^-1 10^-2 Τιμές θέσης 2 4 1 3 Αριθμός N = 2 x 10 1 + 4 x 10 0 + 1 x 0,1 + 3 x 0,01 Τιμές 20 4 0,1 0,03 24,13
Το δυαδικό σύστημα Βάση το 2. Χρησιμοποιούνται μόνο δύο σύμβολα: S = {0, 1} Τα σύμβολα αυτού του θεσιακού αριθμητικού συστήματος συχνά αναφέρονται ως δυαδικά ψηφία ή bit (από τον όρο binary digit) Τα δεδομένα και τα προγράμματα αποθηκεύονται στον υπολογιστή με μορφή δυαδικών σχημάτων, δηλ. συμβολοσειρών από bit O υπολογιστής αποτελείται από ηλεκτρονικούς διακόπτες που μπορούν να βρίσκονται μόνο σε μία από δύο καταστάσεις, on ή off
Δυαδικό 16
Δεκαεξαδικός Συµβολισµός Ένας συμβολισμός για την ομαδοποίηση σχημάτων μπιτ είναι ο δεκαεξαδικός συμβολισμός. Διαβάζεται ευκολότερα από ανθρώπους Βασίζεται στον αριθμό 16 Αυτό σημαίνει ότι υπάρχουν 16 σύμβολα (δεκαεξαδικά ψηφία): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, και F Ένα σχήμα τεσσάρων μπιτ μπορεί να αναπαρασταθεί από ένα δεκαεξαδικό ψηφίο, και το αντίστροφο 17
Δεκαεξαδικός Συµβολισµός Σχήµα Μπιτ Δεκαεξαδικό ψηφίο Σχήµα Μπιτ Δεκαεξαδικό ψηφίο 0000 0 1000 8 0001 1 1001 9 0010 2 1010 A 0011 3 1011 B 0100 4 1100 C 0101 5 1101 D 0110 6 1110 E 0111 7 1111 F 18
Δεκαεξαδικός Συµβολισµός Μετατροπή από Δυαδική σε Δεκαεξαδική Μορφή Η μετατροπή ενός σχηματος μπιτ σε δεκαεξαδική τιμή γίνεται με την οργάνωση του σχήματος σε ομάδες 4 μπιτ και την εύρεση της δεκαεξαδικής τιμής για κάθε μια. Για τη μετατροπή μιας δεκαεξαδικής τιμής σε σχήμα μπιτ, ακολουθείται η αντίστροφη διαδικασία 19
Οκταδικός Συµβολισµός Ένας άλλος συμβολισμός για την ομαδοποίηση σχημάτων μπιτ είνα ο οκταδικός συμβολισμός. Βασίζεται στον αριθμό 8. Αυτό σημαίνει ότι υπάρχουν οκτώ σύμβολα (οκταδικά ψηφία): 0, 1 2, 3, 4, 5, 6, και 7 Κάθε οκταδικό ψηφίο μπορεί να αναπαραστήσει 3 μπιτ, και 3 μπι μπορούν να αναπαρασταθούν από ένα οκταδικό ψηφίο 20
Οκταδικός Συµβολισµός Σχήµα Μπιτ Οκταδικό ψηφίο Σχήµα Μπιτ Οκταδικό ψηφίο 000 0 100 4 001 1 101 5 010 2 110 6 011 3 111 7 21
Οκταδικός Συµβολισµός Μετατροπή Η μετατροπή ενός σχηματος μπιτ σε οκταδική τιμή γίνεται με την οργάνωση του σχήματος σε ομάδες 3 μπιτ και την εύρεση της οκταδικής τιμής για κάθε ομάδα. Για τη μετατροπή μιας οκταδικής τιμής σε σχήμα μπιτ, ακολουθείται η αντίστροφη διαδικασία 22
Αλγόριθμος Μετατροπής Ακέραιου Αριθμού από το Δεκαδικό Σύστημα σε Συστήματα Άλλων Βάσεων Δημιουργία Κενού Προορισμού Δίνεται η Προέλευση και η Βάση Διαίρεση της Προέλευσης με τη Βάση Εισαγωγή του υπολοίπου στα αριστερά του προορισμού Προέλευση: Το ακέραιο µέρος του αριθµού Προορισµός: Το ακέραιο µέρος του αριθµού που έχει Μετατραπεί Βάση: Η βάση του προορισµού, π.χ. 2, 8, 10, 16 Το πηλίκο γίνεται προέλευση Είναι το πηλίκο μηδέν; ναι
Αλγόριθμος Μετατροπής Ακέραιου Αριθμού από το Δεκαδικό Σύστημα σε Συστήματα Άλλων Βάσεων 0 Q.. Q Q S R.. R R R D k- 1.. D 2 D 1 D 0 Q: Πηλίκα (Quo ent), S: Προέλευση (Source) R: Υπόλοιπα (Remainders), D: Προορισμός (Des na on) D i : Ψηφίο Προορισμού
Μετατροπή Ακέραιου από το Δεκαδικό στο Δυαδικό Σύστημα 0 1 2 4 8 17 35 Δεκαδικ 1 0 0 0 1 1 Δυαδι Άρα (35) 10 = (100011) 2
Μετατροπή Ακέραιου από το Δεκαδικό Σύστημα στο Οκταδικό Σύστημα 0 1 15 126 Δεκαδικός 1 7 6 Οκταδικός Άρα (126) 10 = (176) 8
Μετατροπή Ακέραιου από το Δεκαδικό Σύστημα στο Δεκαεξαδικό Σύστημα 0 7 126 Δεκαδικός 7 Ε Δεκαεξαδικός Άρα (126) 10 = (7Ε) 16
Αλγόριθμος Μετατροπής του κλασματικού μέρους ενός Αριθμού από το Δεκαδικό Σύστημα σε Συστήματα Άλλων Βάσεων Δημιουργία Κενού Προορισμού Δίνεται η Προέλευση και η Βάση Πολλαπλασιασμός της Προέλευσης με τη Βάση Εισαγωγή του ακεραίου μέρους του αποτελέσματος στα δεξιά του προορισμού Προέλευση: Το κλασµατικό µέρος του αριθµού Προορισµός: Το ακέραιο µέρος του αριθµού που έχει µετατραπεί Βάση: Η βάση του προορισµού, π.χ. 2, 8, 10, 16 Το κλασματικό μέρος γίνεται η νέα προέλευση Το κλασματικό μέρος είναι μηδέν ή επαρκούν τα ψηφία του προορισμού; ναι
Αλγόριθμος Μετατροπής του κλασματικού μέρους ενός Αριθμού από το Δεκαδικό σε Συστήματα Άλλων Βάσεων αιο μέρος (Integer) έλευση (Source) ματικό μέρος n) ορισμός a on) ίο Προορισμού I S F F F.. F 0.. I I I I D - 1 D - 2 D - 3 D - 4... D - l Το κλασματικό μέρος μπορεί να μη γίνει ποτέ μηδέν. Διακόπτουμε τη διαδικασία όταν δημιουργηθούν αρκετά ψηφία
Παράδειγμα: ετατροπή του δεκαδικού 0,625 στο δυαδικό σύστημα Δεκαδικός 0,625 0,25 0,50 0,00 0,625 x 2 - > 1,25 1 0 0 0,25 x 2 - > 0,50 0,50 x 2 - > 1,00 Δυαδικός 1 0 1 Άρα (0,625) 10 = (0,101) 2 ολλαπλασιάζουμε συνεχώς με το 2 και σημειώνουμε το ακέραιο και το κλασματικό μέρος του αποτελέσματος. ο κλασματικό μέρος προχωρά προς τα δεξιά, ενώ το ακέραιο μέρος σημειώνεται κάτω από κάθε πράξη. ταματάμε όταν το κλασματικό μέρος γίνει μηδέν, ή όταν σημειώσουμε αρκετά bit.
Παράδειγμα: Μετατροπή του δεκαδικού 0,625 στο Οκταδικό σύστημα με 4 ψηφία το πολύ Δεκαδικός 0,634 0,072 0,567 0,608 0,634 x 8 - > 5,072 0,072 x 8 - > 0,567 5 0 4 4 0,567 x 8 - > 4,608 0,608 x 8 - > 4,864 Οκταδικός 5 0 4 4 Άρα (0,634) 10 = (0,5044) 2 ολλαπλασιάζουμε συνεχώς με το 8 και σημειώνουμε το ακέραιο και το κλασματικό μέρος του αποτελέσματος. ο κλασματικό μέρος προχωρά προς τα δεξιά, ενώ το ακέραιο μέρος σημειώνεται κάτω από κάθε πράξη. ταματάμε όταν το κλασματικό μέρος γίνει μηδέν, ή όταν σημειώσουμε 4 bit.