Κεφάλαιο 1.2 - 1.2.6 Μετατροπή βάσης αριθμού
Κεφάλαιο 1.2 - 1.2.6 Μετατροπή βάσης αριθμού
1.2.6 Μετατροπή βάσης αριθμού
Για να μετατρέψουμε έναν αριθμό σε ένα σύστημα στον ισοδύναμο αριθμό ενός άλλου συστήματος και δεδομένου ότι το δεκαδικό σύστημα είναι πιο οικείο από τα άλλα συστήματα, αρχικά θα δούμε πώς γίνεται η μετατροπή από το δεκαδικό σύστημα σε οποιοδήποτε άλλο σύστημα. Κατόπιν θα δούμε πως γίνεται η μετατροπή από οποιοδήποτε σύστημα στο δεκαδικό. Τέλος, θα δούμε πώς μπορούμε εύκολα να μετατρέψουμε από δυαδικό σε δεκαεξαδικό ή οκταδικό και αντίστροφα.
Για να μετατρέψουμε έναν αριθμό από δεκαδικό σε οποιοδήποτε άλλο σύστημα, ακολουθούμε την διαδικασία των διαδοχικών διαιρέσεων:
1. Το ακέραιο μέρος ενός αριθμού το διαιρούμε με τον αριθμό του συστήματος που θέλουμε να τον μετατρέψουμε. Για παράδειγμα θέλουμε να μετατρέψουμε έναν αριθμό από το δεκαδικό σε δυαδικό, τότε θα διαιρέσουμε τον αριθμό αυτόν με το δύο.
2. Καθώς διαιρούμε τον αριθμό με τον αριθμό του συστήματος που θέλουμε να τον μετατρέψουμε κάθε φορά, το υπόλοιπο της κάθε διαίρεσης θα είναι το δεξιότερο ψηφίο του αριθμού και το νέο πηλίκο που παίρνουμε κάθε φορά θα το διαιρούμε με τον αριθμό του συστήματος και θα παίρνουμε καινούργιο υπόλοιπο ώσπου να μηδενιστεί το πηλίκο.
Μετατροπή από το δεκαδικό σύστημα αρίθμησης στο δυαδικό
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (53)10 σε δυαδικό. Το ακέραιο μέρος του αριθμού το διαιρούμε με τον αριθμό του συστήματος που θέλουμε να τον μετατρέψουμε, δηλαδή το 2 :
α. Διαιρούμε τον αρχικό αριθμό με το 2
β. Σημειώνουμε το υπόλοιπο και διαιρούμε το πηλίκο πάλι με το 2.
γ. Επαναλαμβάνουμε το βήμα (β) για όσο το ακέραιο πηλίκο είναι μεγαλύτερο από το 0 (ή μέχρι το ακέραιο πηλίκο να γίνει 0)
δ. Ο δυαδικός αριθμός αποτελείται από τα υπόλοιπα των διαιρέσεων ξεκινώντας από το τελευταίο και καταλήγοντας στο πρώτο.
Μετατροπή από το δεκαδικό σύστημα στο οκταδικό
Έστω ότι θέλουμε να μετατρέψουμε τον δεκαδικό αριθμό (45)10 σε οκταδικό. Το ακέραιο μέρος του αριθμού το διαιρούμε με τον αριθμό του συστήματος που θέλουμε να τον μετατρέψουμε, δηλαδή το 8:

Μετατροπή από το δεκαδικό σύστημα
στο δεκαεξαδικό
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (45)10 σε δεκαεξαδικό. . Το ακέραιο μέρος του αριθμού το διαιρούμε με τον αριθμό του συστήματος που θέλουμε να τον μετατρέψουμε, δηλαδή το 16:
Σημαντική παρατήρηση: Επειδή 23=8 και 24=16, για την αναπαράσταση ενός οκταδικού αριθμού χρειάζονται το πολύ τρία δυαδικά ψηφία (8 δυνατοί συνδυασμοί των 3 ψηφίων), ενώ για την αναπαράσταση ενός δεκαεξαδικού αριθμού χρειάζονται το πολύ τέσσερα δυαδικά ψηφία (16 δυνατοί συνδυασμοί των 4 ψηφίων).
Μετατροπή από άλλα συστήματα αρίθμησης στο δεκαδικό
Για να μετατρέψουμε έναν αριθμό από το σύστημα αρίθμησης που βρισκόμαστε στο δεκαδικό, πολλαπλασιάζουμε το κάθε ψηφίο του με τον αριθμό που είναι η βάση του συστήματος αρίθμησης στο οποίο αναπαρίσταται ο αριθμός, π.χ. στο δυαδικό το δύο, στο οκταδικό το 8 κ.τ.λ. και εκθέτη τον αριθμό της θέσης που βρίσκεται το κάθε ψηφίο. Στο τέλος προσθέτουμε όλα τα γινόμενα και το αποτέλεσμα αυτό θα είναι ο αριθμός που ζητάμε στο δεκαδικό σύστημα.
Για να μετατρέψουμε τους παρακάτω δυαδικούς αριθμούς σε δεκαδικούς:
Δυαδικός |
1 |
0 |
1 |
Εκθέτης |
22 |
21 |
20 |
Αποτέλεσμα |
4 |
0 |
1 |
Δεκαδικός αριθμός: 4 + 0 + 1 = 5
(101101)2 = 1Χ25 + 0Χ24 + 1Χ23 + 1Χ22 + 0Χ21 + 1Χ20 = 32 + 0 + 8 + 4 + 0 + 1 = (45)10
Δεκαδικός αριθμός: 4 + 0 + 1 = 5
(101101)2 = 1Χ25 + 0Χ24 + 1Χ23 + 1Χ22 + 0Χ21 + 1Χ20 = 32 + 0 + 8 + 4 + 0 + 1 = (45)10
Δεκαεξαδικός |
1 |
Α |
1 |
Εκθέτης |
162 |
161 |
160 |
Αποτέλεσμα |
256 |
160 |
1 |
Δεκαδικός αριθμός: 256 + 160 + 1 = 417
Για να μετατρέψουμε τους παρακάτω οκταδικούς αριθμούς σε δεκαδικούς:
(457)8 = 4Χ82 + 5Χ81 + 7Χ80 = 256 + 40 + 7 = (303)10
Οκταδικός |
2 |
3 |
7 |
1 |
Εκθέτης |
83 |
82 |
81 |
80 |
Αποτέλεσμα |
1024 |
192 |
56 |
1 |
Δεκαδικός αριθμός: 1024 + 192 + 56 + 1 = 1273
Πίνακας αντιστοιχίας αριθμητικών συστημάτων
Μετατροπή από το δυαδικό σύστημα στο δεκαεξαδικό/οκταδικό και αντίστροφα
Μπορούμε να μετατρέψουμε εύκολα ένα δυαδικό αριθμό στο οκταδικό σύστημα και αντίστροφα. Αυτό γίνεται αν χωρίσουμε τα ψηφία του δυαδικού αριθμού σε τριάδες ξεκινώντας από τα δεξιά του αριθμού. Κάθε μια τριάδα αντιστοιχεί σ’ ένα μονοψήφιο οκταδικό αριθμό, και την αντικαθιστούμε με τον αριθμό αυτό.
Το ίδιο ισχύει και για τη μετατροπή δυαδικού αριθμού σε δεκαεξαδικό και αντίστροφα. Χωρίζουμε τα ψηφία του δυαδικού αριθμού σε τετράδες ξεκινώντας από τα δεξιά του αριθμού. Κάθε μια τετράδα αντιστοιχεί σ’ ένα μονοψήφιο δεκαεξαδικό αριθμό, και την αντικαθιστούμε με τον αριθμό αυτό.
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (101100110101)2 σε οκταδικό:
101 |
100 |
110 |
101 |
Δυαδικός |
1Χ22+0Χ21+1Χ20=5 |
1Χ22+0Χ21+0Χ20=4 |
1Χ22+1Χ21+0Χ20=6 |
1Χ22+0Χ21+1Χ20=5 |
|
5 |
4 |
6 |
5 |
Οκταδικός |
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (101100110101)2 σε δεκαεξαδικό:
1011 |
0011 |
0101 |
Δυαδικός |
1Χ23+0Χ22+1Χ21+1Χ20=11 |
0Χ23+0Χ22+1Χ21+1Χ20=3 |
0Χ23+1Χ22+0Χ21+1Χ20=5 |
|
Β |
3 |
5 |
Δεκαεξαδικός |
Η μετατροπή ενός δεκαεξαδικού αριθμού σε δυαδικό γίνεται αντικαθιστώντας κάθε ψηφίο του αριθμού με το αντίστοιχο τετραψήφιο δυαδικό αριθμό.
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (4FD)16 σε δυαδικό:
4 |
F |
D |
Δεκαεξαδικός |
|
0Χ23+1Χ22+0Χ21+0Χ20=4 |
1Χ23+1Χ22+1Χ21+1Χ20=15 |
1Χ23+1Χ22+0Χ21+1Χ20=13 |
|
|
0100 |
1111 |
1101 |
Δυαδικός |
|
Η μετατροπή ενός οκταδικού αριθμού προς το δυαδικό γίνεται με τον ίδιο τρόπο, αλλά αντικαθιστούμε κάθε ψηφίο του αριθμού με το αντίστοιχο τριψήφιο δυαδικό αριθμό.
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (24)8 σε δυαδικό:
2 |
4 |
Οκταδικός |
0Χ22+1Χ21+0Χ20=2 |
1Χ22+0Χ21+0Χ20=4 |
|
010 |
100 |
Δυαδικός |
Μετατροπή από το δεκαεξαδικό σύστημα στο οκταδικό και αντίστροφα
Η μετατροπή δεκαεξαδικού αριθμού σε οκταδικό ακολουθεί τα
παρακάτω βήματα:
1. Μετατρέπουμε τον δεκαεξαδικό αριθμό σε δυαδικό αντικαθιστώντας κάθε ψηφίο
του αριθμού με το αντίστοιχο τετραψήφιο δυαδικό αριθμό
2. Χωρίζουμε τον δυαδικό σε τριάδες ξεκινώντας από τα δεξιά του αριθμού
3. Μετατρέπουμε κάθε τριάδα στον αντίστοιχο οκταδικό αριθμό.
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (4FD)16 σε οκταδικό:
4 |
F |
D |
Δεκαεξαδικός |
0Χ23+1Χ22+0Χ21+0Χ20 |
1Χ23+1Χ22+1Χ21+1Χ20 |
1Χ23+1Χ22+0Χ21+1Χ20 |
|
0100 |
1111 |
1101 |
Δυαδικός |
Τον αριθμό (010011111101)2 που βρήκαμε τον χωρίζουμε σε τριάδες:
010 |
011 |
111 |
101 |
Δυαδικός |
2 |
3 |
7 |
5 |
Οκταδικός |
Η μετατροπή οκταδικού αριθμού σε δεκαεξαδικό γίνεται με τον ίδιο τρόπο. Μετατρέπουμε τον οκταδικό αριθμό σε δυαδικό . Έπειτα, χωρίζουμε τον δυαδικό αριθμό που θα βρούμε σε τετράδες για να βρούμε το δεκαεξαδικό ισοδύναμο.
Έστω ότι θέλουμε να μετατρέψουμε τον αριθμό (4116)8 σε δεκαεξαδικό:
4 |
1 |
1 |
6 |
Οκταδικός |
1Χ22+0Χ21+0Χ20 |
0Χ22+0Χ21+1Χ20 |
0Χ22+0Χ21+1Χ20 |
1Χ22+1Χ21+0Χ20 |
|
100 |
001 |
001 |
110 |
Δυαδικός |
Τον αριθμό (100001001110)2 που βρήκαμε τον χωρίζουμε σε τετράδες:
1000 |
0100 |
1110 |
Δυαδικός |
8 |
4 |
Ε |
Δεκαεξαδικός |