Chapter 3. Αριθμητική Υπολογιστών. (συνέχεια)

Σχετικά έγγραφα
Chapter 3. Αριθμητική Υπολογιστών. Όγδοη (8 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Chapter 3. Αριθμητική Υπολογιστών. Έβδομη (7 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Αρχιτεκτονικές Υπολογιστών

Κεφάλαιο 3. Αριθμητική για υπολογιστές

Κεφάλαιο 3. Αριθμητική για υπολογιστές

Αριθμητική Κινητής Υποδιαστολής Πρόσθεση Αριθμών Κινητής Υποδιαστολής

Chapter 3 Αριθμητική Υπολογιστών

1. Το σύστημα κινητής υποδιαστολής 2. Αναπαράσταση πραγματικών δυαδικών αριθμών 3. Το πρότυπο 754 της ΙΕΕΕ

ΑΡΙΘΜΗΤΙΚΗ ΓΙΑ ΥΠΟΛΟΓΙΣΤΕΣ

Αριθμητική για υπολογιστές

Πραγµατικοί αριθµοί κινητής υποδιαστολής Floating Point Numbers. Σ. Τσιτµηδέλης ΤΕΙ ΧΑΛΚΙΔΑΣ

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Νεκτάριος Κοζύρης ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ - ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

Πολλαπλασιασμός και Διαίρεση Ακεραίων

Αριθμητική Υπολογιστών. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

Chapter 3. Αριθμητική Υπολογιστών. (συνέχεια)

ΚΑΝΕΝΑ ΑΡΙΘΜΗΤΙΚΟ ΣΥΣΤΗΜΑ ΕΝ ΜΠΟΡΕΙ ΝΑ ΑΠΕΙΚΟΝΙΣΕΙ ΟΛΟΥΣ ΤΟΥΣ ΠΡΑΓΜΑΤΙΚΟΥΣ ΑΡΙΘΜΟΥΣ, ΙΟΤΙ ΕΧΟΥΜΕ ΠΕΡΙΟΡΙΣΜΕΝΟ ΕΥΡΟΣ ΑΚΡΙΒΕΙΑΣ.

Κεφάλαιο 3 Αριθμητική Υπολογιστών (Arithmetic for Computers)

Οργάνωση Υπολογιστών

Ενδιάμεση Β205. Κεφ. 1-2, Παράρτημα Α Εργαστήρια Εργασίες Ενδιάμεση του 2014 Όχι διάλεξη την Τρίτη (Προετοιμασία)

Σύστημα Πλεονάσματος. Αναπαράσταση Πραγματικών Αριθμών. Αριθμητικές Πράξεις σε Αριθμούς Κινητής Υποδιαστολής

Εισαγωγή στους Υπολογιστές

Εισαγωγή στην επιστήμη των υπολογιστών

Κεφάλαιο 3. Αριθµητική για υπολογιστές. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση

Σύστημα Πλεονάσματος και Αναπαράσταση Αριθμών Κινητής Υποδιαστολής

Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση. Κεφάλαιο 3. Αριθµητική για υπολογιστές

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

Πράξεις με δυαδικούς αριθμούς

Αριθμητική Υπολογιστών (Κεφάλαιο 3)

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

1.4 Αριθμητική υπολογιστών και σφάλματα

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Κεφάλαιο 3

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Κεφάλαιο 2. Οργάνωση και διαχείριση της Πληροφορίας στον. Υπολογιστή

Δύο είναι οι κύριες αιτίες που μπορούμε να πάρουμε από τον υπολογιστή λανθασμένα αποτελέσματα εξαιτίας των σφαλμάτων στρογγυλοποίησης:

Ψηφιακά Κυκλώματα Ι. Μάθημα 1: Δυαδικά συστήματα - Κώδικες. Λευτέρης Καπετανάκης

Μελέτη και σχεδίαση αριθμητικής και λογικής μονάδας, στα 32 μπιτ, συμπεριλαμβάνοντας πράξεις κινητής υποδιαστολής απλής ακρίβειας.

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.

Ψηφιακά Συστήματα. 1. Συστήματα Αριθμών

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 3 : Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

Κεφάλαιο 2. Συστήματα Αρίθμησης και Αναπαράσταση Πληροφορίας. Περιεχόμενα. 2.1 Αριθμητικά Συστήματα. Εισαγωγή

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 11 ο και 12 ο

1 η Ενδιάμεση Εξέταση Απαντήσεις/Λύσεις

Οργάνωση Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο Σύντομη Επανάληψη. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ

3.1 εκαδικό και υαδικό

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 3 ο. Πανεπιστήµιο Θεσσαλίας - Τµήµα Μηχανικών Η/Υ, Τηλεπικοινωνιών και ικτύων

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ

Δυαδικό Σύστημα Αρίθμησης

IEEE Standard 754 [IEEE 85]

Σφάλματα (errors) Σε κάθε υπολογισμό μιας πραγματικής ποσότητας υπάρχει σφάλμα

Κεφάλαιο 3 Κεντρική Μονάδα Επεξεργασίας

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Εισαγωγή στην πληροφορική

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 7 και 8: Αναπαραστάσεις. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

1 Αριθμητική κινητής υποδιαστολής και σφάλματα στρογγύλευσης

Αριθμητικές Μέθοδοι σε Προγραμματιστικό Περιβάλλον

Αρχιτεκτονική Υπολογιστών. Data. Κείμενο. Βίντεο. Αριθμοί Εικόνες. Ήχοι

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής. Οργάνωση Η/Υ. Γιώργος ηµητρίου. Μάθηµα 2 ο Σύντοµη Επανάληψη

Συστήματα αρίθμησης. = α n-1 *b n-1 + a n-2 *b n-2 + +a 1 b 1 + a 0 όπου τα 0 a i b-1

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Τρίτη (3 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

Αριθμητική Υπολογιστών

Κεφάλαιο 3. Αριθμητική Υπολογιστών Review. Hardware implementation of simple ALU Multiply/Divide Real Numbers

ΣΦΑΛΜΑΤΑ ΑΡΙΘΜΗΤΙΚΩΝ ΥΠΟΛΟΓΙΣΜΩΝ

Λογική Σχεδίαση Ψηφιακών Συστημάτων

1. ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΩΝ. α i. (α i β i ) (1.3) όπου: η= το πλήθος ακεραίων ψηφίων του αριθμού Ν. n-1

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

Εισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ

Ελίνα Μακρή

Εισαγωγή στην Επιστήμη των Υπολογιστών

Επιστημονικός Υπολογισμός (set3) Δρ. Γιώργος Τσιρογιάννης

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

3. Πρόσθεση Πολλαπλασιασμός 4. Πρόσθεση στο πρότυπο ΙΕΕΕ Πολλαπλασιασμός στο πρότυπο ΙΕΕΕ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Αριθμητικά Συστήματα Κώδικες

Αριθµητική υπολογιστών

ΘΕΜΑ : ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΗΣΗΣ. ΔΙΑΡΚΕΙΑ: 1 περιόδους. 22/1/ :11 Όνομα: Λεκάκης Κωνσταντίνος καθ. Τεχνολογίας

Λογική Σχεδίαση Ι - Εξεταστική Φεβρουαρίου 2013 Διάρκεια εξέτασης : 160 Ονοματεπώνυμο : Α. Μ. Έτος σπουδών:

ΠΛΗΡΟΦΟΡΙΚΗ I. 4 η ΔΙΑΛΕΞΗ Αριθμητικά Συστήματα

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΠΛΗ-21

Αριθμητικά Συστήματα

Μαθηματικά. Ενότητα 1: Οι Αριθμοί. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Αριθμητική Ανάλυση & Εφαρμογές

Λύσεις Ασκήσεων ΣΕΙΡΑ 1 η. Πρόσημο και μέγεθος

Αριθμητικά Συστήματα = 3 x x x x 10 0

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι

Transcript:

Chapter 3 Αριθμητική Υπολογιστών (συνέχεια) Διαφάνειες διδασκαλίας από το πρωτότυπο αγγλικό βιβλίο (4 η έκδοση), μετάφραση: Καθ. Εφαρμογών Νικόλαος Πετράκης, Τμήματος Ηλεκτρονικών Μηχανικών του Τ.Ε.Ι. Κρήτης. Τελευταία τροποποίηση: 2014-2015 χειμερινό εξάμηνο.

Διαίρεση (Division) διαιρέτης (divisor) πηλίκο (quotient) διαιρετέος (dividend) υπόλοιπο (remainder) 1001 1000 1001010-1000 10 101 1010-1000 10 Τελεστέοι με n δυαδικά ψηφία παράγουν πηλίκο και υπόλοιπο με n δυαδικά ψηφία Έλεγχος για διαιρέτη μηδέν (0) Η απλή τεχνική της διαίρεσης Εάν ο διαιρέτης διαιρετέο Τοποθετείται 1 στο πηλίκο, αφαίρεση Διαφορετικά 0 στο πηλίκο, και κατεβάζουμε το επόμενο δυαδικό ψηφίο του διαιρετέου Διαίρεση με επαναφορά ή αποκατάσταση (Restoring division) Εκτελείται η αφαίρεση, και αν το υπόλοιπο γίνει < 0, προστίθεται πίσω ο διαιρέτης Προσημασμένη διαίρεση (Signed division) Διαίρεση κατά απόλυτες τιμές Ρύθμιση πρόσημων πηλίκου και υπολοίπου κατά απαίτηση Chapter 3 Arithmetic for Computers 2

Υλικό διαίρεσης Αρχικά ο διαιρέτης στο αριστερό μισό Το πηλίκο με αρχική τιμή 0 32 bits 0000 00 000 00 32 bits Αρχικά ο διαιρετέος στο δεξιό μισό Chapter 3 Arithmetic for Computers 3

Βελτιωμένο κύκλωμα διαίρεσης διαιρέτης Αρχικά ο διαιρετέος στο αριστερό μισό Διαίρεση (Πολλαπλασιασμός ) διαιρετέος 000 00 υπόλοιπο πηλίκο Στο τέλος έχουμε το υπόλοιπο αριστερά και το πηλίκο δεξιά Ένας κύκλος ανά αφαίρεση μερικού υπολοίπου Μοιάζει πολύ με κύκλωμα πολλαπλασιασμού Το ίδιο υλικό μπορεί να χρησιμοποιηθεί και για τις δύο πράξεις Chapter 3 Arithmetic for Computers 4

Ταχύτερη διαίρεση Δεν μπορούμε να χρησιμοποιήσουμε παράλληλο υλικό όπως στον πολλαπλασιασμό Η αφαίρεση εξαρτάται από το πρόσημο του μερικού υπολοίπου Ταχύτεροι διαιρέτες, όπως η τεχνική της διαίρεσης SRT (Sweeney-Robertson-Tocher) παράγουν περισσότερα δυαδικά ψηφία πηλίκου ανά βήμα (τυπική τιμή 4 bit) Εξακολουθούν να απαιτούν πολλά βήματα Chapter 3 Arithmetic for Computers 5

Η διαίρεση στον MIPS Χρησιμοποιεί τους καταχωρητές Hi/Lo για τα αποτελέσματα της πράξης Hi: το υπόλοιπο (remainder) σε 32 bits Lo: το πηλίκο (quotient) σε 32 bits Εντολές div rs, rt / divu rs, rt Δεν γίνεται έλεγχος υπερχείλισης (overflow) ή διαίρεσης διά του μηδενός (divide-by-0) Το λογισμικό πρέπει να ελέγχει, αν απαιτείται Χρησιμοποιείστε mfhi, mflo για πρόσβαση στα αποτελέσματα Chapter 3 Arithmetic for Computers 6

Κινητή υποδιαστολή (Floating Point) Αναπαράσταση πραγματικών (μη ακέραιων) αριθμών Συμπεριλαμβάνοντας πολύ μικρούς και πολύ μεγάλους αριθμούς Όπως η επιστημονική σημειογραφία 2.34 10 56 +0.002 10 4 +987.02 10 9 Στο δυαδικό κανονικοποιημένος (normalized) -μόνο ένα ψηφίο αριστερά της υποδιαστολής και όχι μηδέν μη κανονικοποιημένοι (not normalized) ±1.xxxxxxx 2 2 yyyy Οι τύποι δεδομένων float και double στην C Chapter 3 Arithmetic for Computers 7

Το πρότυπο κινητής υποδιαστολής Ορίστηκε από την IEEE ως Std 754-1985 Αναπτύχθηκε για να αντιμετωπίσει την απόκλιση μεταξύ των απεικονίσεων Προβλήματα φορητότητας σε επιστημονικά προγράμματα (scientific code) Έχει υιοθετηθεί παγκοσμίως Δύο απεικονίσεις (αναπαραστάσεις) Απλής ακρίβειας στα 32 bit (Single precision) Διπλής ακρίβειας στα 64 bit (Double precision) Chapter 3 Arithmetic for Computers 8

IEEE Floating-Point Format single: 8 bits single: 23 bits double: 11 bits double: 52 bits S Εκθέτης (Exponent) Κλάσμα (Fraction) 1 bit x ( 1) S (1 Fraction) 2 (Exponent Bias) S: πρόσημο (sign) (0 μη αρνητικό, 1 αρνητικό) Κανονικοποίηση σημαντικού (significand): 1.0 significand < 2.0 Στους κανονικοποιημένους αριθμούς υπάρχει πάντα ένα δυαδικό ψηφίο αριστερά της υποδιαστολής με τιμή 1, άρα δεν χρειάζεται να το δείξουμε ρητά, υπονοείται (γι αυτό το λέμε implicit ή hidden bit) Το σημαντικό (Significand) είναι το κλάσμα (Fraction) μαζί με το 1. Ο εκθέτης απεικονίζεται σε πολωμένη σημειογραφία (biased notation), δηλ: ο πραγματικός εκθέτης προσαυξημένος με την πόλωση (Bias) Εξασφαλίζει ότι ο εκθέτης θα είναι απρόσημος Στην απλή ακρίβεια: Bias = 127, ενώ στην διπλή: Bias = 1023 Chapter 3 Arithmetic for Computers 9

Εύρος απλής ακρίβειας Οι εκθέτες 00000000 και 11111111 είναι δεσμευμένοι (reserved) Η μικρότερη τιμή Εκθέτης : 00000001 πραγματικός εκθέτης = 1 127 = 126 Κλάσμα : 000 00 σημαντικό = 1.0 ±1.0 2 126 ±1.2 10 38 Η μεγαλύτερη τιμή Εκθέτης : 11111110 πραγματικός εκθέτης = 254 127 = +127 Κλάσμα : 111 11 σημαντικό 2.0 ±2.0 2 +127 ±3.4 10 +38 Chapter 3 Arithmetic for Computers 10

Εύρος διπλής ακρίβειας Οι εκθέτες 0000 00 και 1111 11 δεσμευμένοι Η μικρότερη τιμή Εκθέτης : 00000000001 πραγματικός εκθέτης = 1 1023 = 1022 Κλάσμα : 000 00 σημαντικό = 1.0 ±1.0 2 1022 ±2.2 10 308 Η μεγαλύτερη τιμή Εκθέτης : 11111111110 πραγματικός εκθέτης = 2046 1023 = +1023 Κλάσμα : 111 11 significand 2.0 ±2.0 2 +1023 ±1.8 10 +308 Chapter 3 Arithmetic for Computers 11

Ακρίβεια κινητής υποδιαστολής Σχετική ακρίβεια (Relative precision) Όλα τα δυαδικά ψηφία του κλάσματος είναι σημαντικά Απλή ακρίβεια : περίπου 2 23 (με το κρυμμένο 2 24 ) Ισοδύναμο με το 23 log 10 2 23 0.3 6 με 7 δεκαδικά ψηφία ακρίβεια Διπλή ακρίβεια : περίπου 2 52 (με το κρυμμένο 2 53 ) Ισοδύναμο με το 52 log 10 2 52 0.3 15 με 16 δεκαδικά ψηφία ακρίβεια Chapter 3 Arithmetic for Computers 12

Παράδειγμα κινητής υποδιαστολής Αναπαράσταση του 0,75 0,75 = ( 1) 1 1,1 2 2 1 Πρόσημο (S) = 1 Κλάσμα (Fraction) = 1000 00 2 Εκθέτης (Exponent) = 1 + πόλωση (Bias) Single : 1 + 127 = 126 = 01111110 2 Double : 1 + 1023 = 1022 = 01111111110 2 Single :1011111101000 00 Double :1011111111101000 00 Chapter 3 Arithmetic for Computers 13

Παράδειγμα κινητής υποδιαστολής Ποιος αριθμός είναι απεικονισμένος σε κινητή υποδιαστολή απλή ακρίβεια 11000000101000 00 Πρόσημο (S) = 1 Κλάσμα (Fraction) = 01000 00 2 Εκθέτης (Exponent) = 10000001 2 = 129 x = ( 1) 1 (1 + 0,01 2 ) 2 (129 127) = ( 1) 1,25 2 2 = 5,0 Chapter 3 Arithmetic for Computers 14

Μη κανονικοποιημένοι (denormal) αριθμοί Εκθέτης = 000...0 το υπονοούμενο (implicit) bit είναι 0 x ( 1) S (0 Fraction) 2 Bias Μικρότερος από τους κανονικούς (normal) αριθμούς Επιτρέπει σταδιακή (gradual) ανεπάρκεια (underflow), με μειωμένη ακρίβεια Όταν το κλάσμα είναι = 000...0 τότε x ( 1) S (0 0) 2 Bias 0.0 Δύο απεικονίσεις του 0.0! Chapter 3 Arithmetic for Computers 15

Άπειρο και όχι-αριθμός (NaN) Εκθέτης = 111...1, κλάσμα = 000...0 ± Άπειρο Μπορεί να χρησιμοποιηθεί στους επακόλουθους υπολογισμούς, αποφεύγοντας την ανάγκη για έλεγχο υπερχείλισης Εκθέτης = 111...1, Κλάσμα 000...0 Όχι αριθμός {Not-a-Number (NaN)} Δείχνει εσφαλμένο ή αόριστο αποτέλεσμα π.χ., 0,0 / 0,0 Μπορεί να χρησιμοποιηθεί στους επακόλουθους υπολογισμούς Chapter 3 Arithmetic for Computers 16

Κωδικοποίηση IEEE-754 αριθμών Κ.Υ. Απλή Ακρίβεια Διπλή Ακρίβεια Εκθέτης Κλάσμα Εκθέτης Κλάσμα Αναπαριστώμενο αντικείμενο 0 0 0 0 μηδέν (0) 0 μη μηδενικό 0 μη μηδενικό 1 254 οτιδήποτε 1 2046 οτιδήποτε +/- μη κανονικοποιημένος αριθμός +/- αριθμός κινητής υποδιαστολής 255 0 2047 0 +/- άπειρο 255 μη μηδενικό 2047 μη μηδενικό NaN (Not a Number = όχι αριθμός) Chapter 3 Arithmetic for Computers 17

Πρόσθεση σε κινητή υποδιαστολή Θεωρείστε ένα παράδειγμα στο δεκαδικό τετραψήφιο 9,999 10 1 + 1,610 10 1 1. Στοίχιση (ευθυγράμμιση) των υποδιαστολών Ολισθαίνοντας τον αριθμό με τον μικρότερο εκθέτη 9,999 10 1 + 0,016 10 1 2. Πρόσθεση σημαντικών 9,999 10 1 + 0,016 10 1 = 10,015 10 1 3. Κανονικοποίηση αποτελέσματος και έλεγχος για υπερχείλιση (overflow) ή ανεπάρκεια (underflow) 1,0015 10 2 4. Στρογγυλοποίηση και αν χρειαστεί κανονικοποίηση εκ νέου 1,002 10 2 Chapter 3 Arithmetic for Computers 18

Πρόσθεση σε κινητή υποδιαστολή(κ.υ.) Τώρα θεωρείστε ένα τετραψήφιο δυαδικό παράδειγμα 1,000 2 2 1 + ( 1,110 2 2 2 ) // (0,5 + ( 0,4375)) 1. Στοίχιση υποδιαστολών Ολίσθηση του αριθμού με τον μικρότερο εκθέτη 1,000 2 2 1 + ( 0,111 2 2 1 ) 2. Πρόσθεση σημαντικών 1,000 2 2 1 + ( 0,111 2 2 1 ) = 0,001 2 2 1 3. Κανονικοποίηση αποτελέσματος και έλεγχος για υπερχείλιση ή ανεπάρκεια 1,000 2 2 4, δεν εμφανίστηκε over/underflow 4. Στρογγυλοποίηση και κανονικοποίηση εκ νέου εάν απαιτείται 1,000 2 2 4 (χωρίς αλλαγή) // 0,0625 Chapter 3 Arithmetic for Computers 19

Υλικό πρόσθεσης Κ.Υ. Πολύ πιο πολύπλοκο σε σύγκριση με τον αθροιστή ακεραίων Εκτελώντας την λειτουργία σε ένα κύκλο θα διαρκούσε πάρα πολύ Πολύ περισσότερο από όσο διαρκούν οι πράξεις με ακεραίους Βραδύτερο ρολόι θα επιβάρυνε όλες τις εντολές Ο αθροιστής Κ.Υ. συνήθως χρειάζεται κάμποσους κύκλους ρολογιού Μπορεί να υλοποιηθεί με διοχέτευση (pipeline) Chapter 3 Arithmetic for Computers 20

Διάγραμμα Πρόσθεσης Κ.Υ. Έναρξη 1. Σύγκριση εκθετών των δύο αριθμών. Ολίσθηση του μικρότερου αριθμού προς τα δεξιά μέχρι ο εκθέτης του να ταιριάζει με τον μεγάλο εκθέτη 2. Πρόσθεση των σημαντικών 3. Κανονικοποίηση του αθροίσματος, είτε με δεξιά ολίσθηση και αύξηση του εκθέτη, είτε με αριστερή ολίσθηση και μείωση του εκθέτη Υπερχείλιση ή ανεπάρκεια; Ναι Όχι 4. Στρογγυλοποίηση του σημαντικού στον κατάλληλο αριθμό bit Εξαίρεση Όχι Παραμένει κανονικοποιημένος; Ναι Τέλος Chapter 3 Arithmetic for Computers 21

Υλικό αθροιστή Κ.Υ. Βήμα 1 Βήμα 2 Βήμα 3 Βήμα 4 Chapter 3 Arithmetic for Computers 22