Στην επιστήμη των υπολογιστών, οι υποκανονικοί αριθμοί είναι το υποσύνολο των αποκανονικοποιημένων αριθμών (μερικές φορές ονομάζονται μη κανονικοί) που γεμίζουν το κενό υποροής γύρω από το μηδέν στην αριθμητική κινητής υποδιαστολής. … Αντίστροφα, μια αποκανονικοποιημένη τιμή κινητής υποδιαστολής έχει ένα σημαντικό και με αρχικό ψηφίο μηδέν.
Τι είναι κανονικοποιημένοι και αποκανονικοποιημένοι αριθμοί κινητής υποδιαστολής;
Η Java χρησιμοποιεί το πρότυπο IEEE 754 για αναπαράσταση κινητής υποδιαστολής. Σε αυτήν την αναπαράσταση, οι πλωτήρες κωδικοποιούνται χρησιμοποιώντας 1 bit πρόσημου, 8 bit εκθέτη και 23 bit mantissa. … Ως αποτέλεσμα, οι πλωτήρες έχουν 24 σημαντικά bits ακρίβειας και οι διπλοί έχουν 53 σημαντικά bits ακρίβειας. Αυτοί οι αριθμοί ονομάζονται κανονικοποιημένοι αριθμοί.
Πώς καταλαβαίνετε εάν ένας αριθμός έχει κανονικοποιηθεί ή αποκανονικοποιηθεί;
Για παράδειγμα, εάν προσπαθούσατε να αντιπροσωπεύσετε το 12,34, τότε θα το κωδικοποιούσατε ως 123400 -04. Αυτό ονομάζεται "κανονικοποιημένο". Σε αυτήν την περίπτωση, καθώς τα δύο κατώτερα ψηφία είναι μηδέν, θα μπορούσατε να εκφράσετε την τιμή ως 012340 -03 ή 001234 -02 ισοδύναμα. Αυτό θα ονομαζόταν "αποκανονικοποιημένο".
Τι είναι ένας κανονικοποιημένος αριθμός κινητής υποδιαστολής;
Ένας αριθμός κινητής υποδιαστολής κανονικοποιείται όταν αναγκάζουμε το ακέραιο μέρος της μάντισσας του να είναι ακριβώς 1 και αφήνουμε το κλάσμα του να είναι ό,τι θέλουμε. Για παράδειγμα, αν παίρναμε τον αριθμό 13.25, που είναι 1101.01 σε δυαδικό σύστημα, το 1101 θα ήταν το ακέραιο μέρος καιΤο 01 θα ήταν το κλάσμα.
Τι αντιπροσωπεύουν οι αποκανονικοποιημένοι αριθμοί;
Αποκανονικοποιημένοι αριθμοί
Για να μειωθεί η απώλεια ακρίβειας όταν συμβαίνει υπορροή, το IEEE 754 περιλαμβάνει την ικανότητα να αναπαριστά κλάσματα μικρότερα από αυτά που είναι δυνατά στην κανονικοποιημένη αναπαράσταση, κάνοντας το σιωπηρό πρώτο ψηφίο 0. Αυτοί οι αριθμοί ονομάζονται κανονικοί.