ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr Εισαγωγή στην Επιστήµη των Υπολογιστών Εξάµηνο 4ο-ΣΗΜΜΥ 7/6/4 Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών (µε βάση το κεφ. 4 του βιβλίου «Ψηφιακοί Υπολογιστές» των Γ. Παπακωνσταντίνου, Γ. Φραγκάκη) (καθηγητής: Νεκτάριος Κοζύρης) 1. Να µετατραπούν οι δεκαδικοί αριθµοί 167,3 και 93,1 σε δεκαεξαδικούς. Για κάθε αριθµό µετατρέπουµε ξεχωριστά το ακέραιο και το κλασµατικό τµήµα στις αντίστοιχες δεκαεξαδικές παραστάσεις τους: Η µετατροπή του ακέραιου µέρους από δεκαδικό σε δεκαεξαδικό γίνεται µε διαδοχικές διαιρέσεις του ακεραίου µε το 16. Τα διαδοχικά υπόλοιπα των διαιρέσεων δίνουν τα δεκαεξαδικά ψηφία του αριθµού (µε αύξουσα σειρά τάξης µεγέθους), ενώ τα πηλίκα που προκύπτουν αποτελούν τους διαιρετέους των επόµενων διαιρέσεων. Η διαδικασία τελειώνει όταν το πηλίκο είναι < 16. Η µετατροπή του κλασµατικού µέρους από δεκαδικό σε δεκαεξαδικό γίνεται µε διαδοχικούς πολλαπλασιασµούς µε το 16. Τα διαδοχικά ακέραια µέρη που προκύπτουν από τους πολ/σµούς δίνουν (µε φθίνουσα τάξη µεγέθους) τα δεκαεξικά ψηφία, όπως φαίνεται στη συνέχεια: 167,3 = 167 +,3 167 7 16 1 < 16 Α,3 16 = 5,1,1 16 = 1,9,9 16 = 14,7 Ε,7 16 = 11,5 Β,5 16 = 8,3,3 16 = 5,1 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) 167 Α7,3, 51ΕΑ8 Άρα: 167,3 <1> = Α7,51ΕΒ8 <16> Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3
93,1 = 93 +,1 93 13 D 16 5 < 16,1 16 =,16,16 16 =,56,56 16 = 8,96,96 16 = 15,36 F,36 16 = 5,76,76 16 = 1,16 C,16 16 =,56 (επαναλαµβάνονται τα ίδια ψηφία) 93 5D,1,8F5C Άρα: 93,1 <1> = 5D,8F5C <16>. Να µετατραπούν οι δεκαδικοί αριθµοί Α = -3, Β = 64 σε δυαδικούς για υπολογιστή που έχει λέξη των 8 ψηφίων και χρησιµοποιεί α)παράσταση συµπληρώµατος ως προς ένα. β) παράσταση συµπληρώµατος ως προς δύο. Να υπολογισθούν οι αριθµοί Α+Β, Α-Β, Β-Α για κάθε µία από τις παραπάνω περιπτώσεις. Για την µετατροπή της απόλυτης τιµής των δεκαδικών αριθµών σε δυαδικούς ακολουθούµε την ίδια διαδικασία µε την άσκηση 1, µε τη διαφορά ότι στην περίπτωσή µας διαιρούµε (αφού οι αριθµοί Α και Β είναι ακέραιοι) µε το (και όχι µε το 16) Α = 3 Β = 64 3 16 8 4 1 64 3 16 8 4 1 Άρα: 3 <1> = 1 <> = 1 <> και 64 <1> = 1 <> α) Για το σχηµατισµό της παράστασης συµπληρώµατος ως προς ένα, όταν πρόκειται για αρνητικό αριθµό, αντιστρέφουµε όλα τα ψηφία του. Οι θετικοί αριθµοί παραµένουν αµετάβλητοι: (το πρώτο ψηφίο υποδηλώνει το πρόσηµο του αριθµού) Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3
Εποµένως Α = -3 <1> = 1111111 <> -Α= 3 <1> = 1 <> και Β = 64 <1> = 1 <> -Β = -64 <1> = 1111111 <> Α + Β : 1111111 + 1 1 11111 υπερχείλιση : 11111 + 1 = 1 Άρα: Α + Β = 1 <> Α - Β = Α + (-Β) : 1111111 + 1111111 1 11111 υπερχείλιση : 11111 + 1 = 111111 Άρα: Α - Β = 111111 <> Β - Α = Β + (-Α) : 1 + 1 11 Άρα: Β - Α = 11 <> β) Για το σχηµατισµό της παράστασης συµπληρώµατος ως προς δύο, στους αρνητικούς αριθµούς προσθέτουµε 1 στην παράσταση του συµπληρώµατος ως προς ένα. Εποµένως Α = -3 <1> = 111 <> -Α= 3 <1> = 1 <> και Β = 64 <1> = 1 <> -Β = -64 <1> = 11 <> Α + Β : 111 + 1 1 1 υπερχείλιση : αγνοείται Άρα: Α + Β = 1 <> Α - Β = Α + (-Β) : 111 + 11 1 11 υπερχείλιση : αγνοείται Άρα: Α - Β = 11 <> Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3 3
Β - Α = Β + (-Α) : 1 + 1 11 Άρα: Β - Α = 111 <> 3. α) Να παρασταθούν στο δυαδικό σύστηµα οι κλασµατικοί αριθµοί:,1,,,,3,,4,,9. Τι παρατηρείτε; β) Σε Η/Υ που διαθέτει λέξη µε 3 κλασµατικά δυαδικά ψηφία να παρασταθούν οι παραπάνω αριθµοί. α) Η µετατροπή των κλασµατικών αριθµών από δεκαδικοί σε δυαδικοί γίνεται µε διαδοχικούς πολλαπλασιασµούς µε το, όπως περιγράφτηκε στην άσκηση 1,1,1 =,, =,4,4 =,8,8 = 1,6,6 = 1,, =,4 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,1 <1> =,11 <>,, =,4,4 =,8,8 = 1,6,6 = 1,, =,4 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:, <1> =,11 <>,3,3 =,6,6 = 1,, =,4,4 =,8,8 = 1,6,6 = 1, (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,3 <1> =,11 <>,4,4 =,8,8 = 1,6,6 = 1,, =,4,4 =,8 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,4 <1> =,11 <> Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3 4
,5,5 = 1, Άρα:,5 <1> =,1 <>,6,6 = 1,, =,4,4 =,8,8 = 1,6,6 = 1, (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,6 <1> =,11 <>,7,7 = 1,4,4 =,8,8 = 1,6,6 = 1,, =,4,4 =,8 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,7 <1> =,111 <>,8,8 = 1,6,6 = 1,, =,4,4 =,8,8 = 1,6 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,8 <1> =,11 <>,9,9 = 1,8,8 = 1,6,6 = 1,, =,4,4 =,8,8 = 1,6 (επαναλαµβάνονται στο εξής τα ίδια ψηφία) Άρα:,9 <1> =,111 <> Συνοψίζοντας έχουµε:,1 <1> =,111111 <>, <1> =,111111 <>,4 <1> =,111111 <>,8 <1> =,111111 <> Παρατηρούµε ότι ο πολ/µος µε το ισοδυναµεί µε αριστερή ολίσθηση της δυαδικής παράστασης του αριθµού κατά 1 θέση.,3 <1> =,111111 <>,6 <1> =,111111 <> Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3 5
Προκύπτει το ίδιο συµπέρασµα, όπως παραπάνω. Επιπλέον, οι δυαδική παράσταση του,3 µπορεί να υπολογιστεί µε πρόσθεση των δυαδικών,1 +,,5 <1> =,1 <>,7 <1> =,1111111 <> =,5 +,,9 <1> =,1111111 <> =,5 +,4 β) Με στρογγυλοποίηση προκύπτει:,1 <1> =,1 <> =,1 <>, <1> =,11 <> =,1 <>,3 <1> =,1 <> =,1 <>,4 <1> =,11 <> =,11 <>,5 <1> =,1 <> =,1 <>,6 <1> =,11 <> =,11 <>,7 <1> =,111 <> =,11 <>,8 <1> =,11 <> =,11 <>,9 <1> =,111 <> =,111 <> Οπότε, κάποιοι από τους δυαδικούς αριθµούς συµπίπτουν. 4. Στην µνήµη ενός Η/Υ µε λέξη των 16 ψηφίων (1 bit: πρόσηµο, 6 bits: εκθετικό µέρος και 9 bits : συντελεστής) είναι τοποθετηµένοι σε κανονική µορφή οι αριθµοί: i) 1 111111 11 ii) 111 11 Να αναγνωρισθούν. Εφόσον το εκθετικό µέρος παριστάνεται µε 6 ψηφία, υπάρχουν 6 = 64 διαφορετικοί εκθέτες που παριστάνονται ως εξής: υαδική παράσταση Εκθέτης -3 1-31 11111-1 1 11 1 111111 31 i) Βρίσκουµε το συµπλήρωµα ως προς ένα ολόκληρου του αριθµού (αφού πρόκειται για αρνητικό αριθµό): 1 111111 11 1111111 Υπολογίζουµε ξεχωριστά εκθέτη και κλασµατικό µέρος: Εκθέτης: = -3 Κλασµ. µέρος: 1111111 = -1 + -3 + -5 + -6 + -7 + -8 + -9,6855 Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3 6
Εποµένως πρόκειται για τον αριθµό -3,6855 ii) ε χρειάζεται να βρούµε το συµπλήρωµα ως προς ένα (ο αριθµός είναι θετικός): 111 11 Υπολογίζουµε ξεχωριστά εκθέτη και κλασµατικό µέρος: Εκθέτης: 111 = -5 Κλασµ. µέρος: 11= -1 + -4,565 Εποµένως πρόκειται για τον αριθµό -5,565 5. Για τον Η/Υ της άσκησης 4 να προσδιορισθούν : α) Ο µεγαλύτερος και ο µικρότερος αριθµός που µπορεί να παρασταθεί. β) Η ακρίβεια. α) Ο µεγαλύτερος αριθµός που µπορεί να παρασταθεί είναι + +31 (1- -9 ) : 111111 111111111 Ο µικρότερος αριθµός που µπορεί να παρασταθεί είναι - +31 (1- -9 ) : 1 β) Στους µεγάλους αριθµούς η ακρίβεια είναι µικρή, δηλαδή: + +31 [( -1 + - + -3 + -4 + -5 + -6 + -7 + -8 + -9 ) ( -1 + - + -3 + -4 + -5 + -6 + -7 + -8 )] = + +31-9 = + : ( 111111 111111111) ( 111111 11111111) = 111111 1 Την καλύτερη ακρίβεια την έχουµε στους αριθµούς που βρίσκονται κοντά στο (αναζητάµε το µέτρο της ακρίβειας, οπότε αρκεί να εξετάσουµε µόνο τους θετικούς αριθµούς): -3 [( -1 + -9 ) ( -1 )] = -3-9 = -41 : ( 11) ( 1) = 1 Μεταξύ του και του αµέσως µεγαλύτερου αριθµού ( -3-1 ) η ακρίβεια είναι: -33 : 1 6. Σε Η/Υ που διαθέτει λέξη των 16 ψηφίων για την παράσταση των αριθµών κινητής υποδιαστολής ( 1 ψηφίο για το πρόσηµο, 6 ψηφία για τον εκθέτη και 9 για τον συντελεστή) να παρασταθούν σε κανονική µορφή οι αριθµοί: (i) 3 1 1 <1> (ii) -1,47 <1> Μετατρέπουµε τους αριθµούς σε δυαδικούς, στην κανονική µορφή και στη συνέχεια τους παριστάνουµε σε δυαδικό στη µορφή κινητής υποδιαστολής (i) Για ευκολία πράξεων µετατρέπω αρχικά τον αριθµό σε δεκαεξαδικό: υπόλοιπο 3 / 16 = 1875 Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3 7
1875 / 16 = 1171875 1171875 / 16 = 73418 1 C 73418 / 16 = 457763 1 A 457763 / 16 = 861 3 861 / 16 = 1788 1 C 1788 / 16 = 111 15 F 111 / 16 = 6 < 16 Άρα 3 <1> = 6FC3AC <16> = 11 1111 11 11 11 11 <> 6 F C 3 A C = + +31,11 1111 11 11 11 11 <> = 111111 11111111 (ii) Μετατρέπω ξεχωριστά το ακέραιο και το κλασµατικό µέρος στη δυαδική µορφή: 1 <1> = 11 <> και,47 =,94,94 = 1,88,88 = 1,76 Οπότε,47 <1> =,1111 <>,76 = 1,5,5 = 1,4,4 =,8 Άρα: -1,47 <1> = - 11,1111 <> = - +4,111111 <> = ( - ) 11 111111 = 1 1111 111 7. Σε ένα Η/Υ η µορφή της παράστασης πραγµατικών αριθµών είναι 7 bits για τον συντελεστή, 8 bits για τον εκθέτη και 1 bit για το πρόσηµο του αριθµού. Να βρεθεί ποιοι από τους αριθµούς 9,1 9999999,9 έχουν την ίδια εσωτερική παράσταση. Πρέπει να βρούµε την ακρίβεια της παράστασης των αριθµών, στην περιοχή [9,1 έως 9999999,9]. Ισχύει: 9 = 9 1 6 9 = 11 =,11 4 ηλαδή ενδιαφερόµαστε για την ακρίβεια στην τάξη µεγέθους 4. Συγκεκριµένα είναι 3 = 838868 < 9,1 και 9999999,9 < 1677717 = 4 Εποµένως η κανονική µορφή των αριθµών είναι α 4, όπου α έχει 7 δυαδικά ψηφία. Στην περιοχή αυτή, η ακρίβεια είναι 4-7 = -3. Άρα το κλασµατικό τµήµα του αριθµού παριστάνεται µε 3 δυαδικά ψηφία. Όπως έχει υπολογιστεί ήδη από την άσκηση 3β, οι αριθµοί µε ίσα ακέραια µέρη θα ταυτίζονται όταν λήγούν σε, ή,3 και,7 ή,8. Ασκήσεις στα Συστήµατα Αρίθµησης- υαδική Παράσταση Αριθµών-cslab.ece.ntua.gr 3 8