Μετατροπή ενός δεκαδικού αριθμού σε δυαδικό αριθμό με επανειλημμένα διαιρώντας το δεκαδικό αριθμό με το 2 και την παρακολούθηση των υπολείμματα . Για παράδειγμα , για να μετατρέψει το δεκαδικό σε δυαδικό 50 , ξεκινήστε με τη διαίρεση με το 2 σε 50 , και να κρατήσει τη διαίρεση 2 στα πηλίκα , μέχρι το 50 έχει φύγει , την παρακολούθηση των υπολείμματα . 50/2 = 25 με υπόλοιπο 0 . 25/2 = 12 με υπόλοιπο 1 . 12/2 = 6 με υπόλοιπο 0 . 6/2 = 3 με υπόλοιπο 0 . 3/2 = 1 με υπόλοιπο 1 . 1/2 = 0 με υπόλοιπο 1 . Οι υπόλοιποι - από την τελευταία στην πρώτη - είναι 110010 , αλλά αν χρησιμοποιείτε ένα 8 -bit μητρώα όλες οι χορδές έχουν 8 ψηφία , ώστε pad με μηδενικά στα αριστερά για να πάρει 0011 0010 2
. Χρησιμοποιήστε " συμπληρώματος ως προς δύο " σύμβολα για να εκπροσωπεί τους αρνητικούς αριθμούς . Για να μετατρέψετε ένα δυαδικό αριθμό σε έναν αρνητικό αριθμό , flip όλα τα κομμάτια και προσθέστε 1 . Για παράδειγμα , -50 είναι 0011 0010 μετατρέπεται σε συμπληρώματος ως προς δύο ή 1100 1101 + 1 = 1100 1110 . Ένα από τα καλά πράγματα για εκπροσωπούν τους αρνητικούς αριθμούς ως προς δύο συμπληρώματα είναι ότι το αριστερό ψηφίο στη σειρά σας επιτρέπει να γνωρίζετε αν η σειρά αντιπροσωπεύει ένα θετικό ή αρνητικό αριθμό . Εάν το αριστερότερο bit είναι μηδέν, ο αριθμός είναι θετικός . Αν το αριστερότερο bit είναι ένα , ο αριθμός είναι αρνητικός .
Εικόνων 3
Γνωρίστε τα όρια που επιβάλλονται από το μέγεθος του μητρώου και μορφές. Εάν χρησιμοποιείτε ένα μητρώο 8 -bit και χρησιμοποιούν το αριστερότερο bit να εκπροσωπεί το σήμα , έχετε μόνο 7 θέσεις για να εκπροσωπήσει μεγέθους. Επτά bits μπορούν να αντιπροσωπεύουν τις διαφορετικές αριθμούς 0-2 ^ 7 - 1 ή 0 έως το 127 και οι αρνητικοί αριθμοί κάτω σε -127 . Αν χρειαστεί να αντιπροσωπεύσει τους αριθμούς εκτός του εύρους αυτού , θα πρέπει να έχετε ένα μεγαλύτερο μητρώο .
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα