1. Φορτώστε τον δεκαεξαδικό αριθμό σε έναν καταχωρητή.
2. Μετατρέψτε τον δεκαεξαδικό αριθμό σε δυαδικό.
3. Ομαδοποιήστε τον δυαδικό αριθμό σε ομάδες των τριών bit, ξεκινώντας από το λιγότερο σημαντικό bit.
4. Μετατρέψτε κάθε ομάδα τριών bit στο αντίστοιχο οκταδικό ψηφίο.
5. Τα οκταδικά ψηφία που λαμβάνονται στο βήμα 4 αντιπροσωπεύουν το οκταδικό ισοδύναμο του αρχικού δεκαεξαδικού αριθμού.
Ακολουθεί ένα παράδειγμα του τρόπου μετατροπής του δεκαεξαδικού αριθμού A7 σε οκταδική χρήση του μικροεπεξεργαστή 8086:
``` συναρμολόγηση
; Φορτώστε τον δεκαεξαδικό αριθμό A7 στον καταχωρητή AL
MOV AL, 0A7H
; Μετατροπή του δεκαεξαδικού αριθμού σε δυαδικό (10100111)
MOV BL, 0
; Εκτελέστε λειτουργία διαίρεσης για εξαγωγή 3 LSB
XOR BH, BH
DIV BL, 08H; Διαιρώντας το AH:AL με το 8, το πηλίκο στο AL, το υπόλοιπο στο AH
; Ομαδοποιήστε τον δυαδικό αριθμό σε ομάδες των τριών bit (1 010 011 100)
AND AL, 07Η; Εξάγετε 3 LSB του υπολοίπου
MOV SI, 02H
MUL SI; Μετατόπιση υπολοίπου
Ή AL, AH
MOV SI, 04H
MUL SI; Αλλαγή πάλι
Ή AL, BH
; Μετατρέψτε κάθε ομάδα τριών bit στο αντίστοιχο οκταδικό ψηφίο
MOV DL, AL; Μετακινήστε το υπόλοιπο AL στο DL
DAA; Εκτελέστε δεκαδική προσαρμογή
; Εμφάνιση του οκταδικού αριθμού (125)
MOV AH, 02H
INT 21H
```
Σε αυτό το παράδειγμα, η έξοδος θα είναι 125 που είναι το οκταδικό ισοδύναμο του δεκαεξαδικού αριθμού A7 .
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα