.
.Stack 100h
.δεδομένα
Num1 dB -12; Πρώτος υπογεγραμμένος αριθμός 8-bit
Num2 dB 5; Δεύτερος αριθμός για πολλαπλασιασμό με
Αποτέλεσμα DW;; Αποτέλεσμα πολλαπλασιασμού (16-bit)
.κώδικας
κύριο proc
MOV AX, @Data; Αρχικοποιήστε το μητρώο τμήματος δεδομένων
mov ds, τσεκούρι
MOV AL, NUM1; Φορτώστε τον πρώτο αριθμό στο μητρώο AL
MOV BL, NUM2; Φορτώστε τον δεύτερο αριθμό στο μητρώο BL
imul bl; Πολλαπλασιάστε το AL με BL (αποτέλεσμα σε τσεκούρι)
αποτέλεσμα MOV, AX; Αποθηκεύστε το αποτέλεσμα στη μεταβλητή «αποτέλεσμα»
; Εμφάνιση του αποτελέσματος (προαιρετικό)
; ...
Mov Ah, 4ch; Έξοδος προγράμματος
int 21h
κύριο endp
τελικός κύριος
`` `
Επεξήγηση:
1. Αρχικοποίηση:
- `.Model Small` ορίζει το μοντέλο μνήμης (μικρό μοντέλο) και ρυθμίζει τη δομή του προγράμματος.
- `.stack 100h` Αποθεματικά 100h bytes για τη στοίβα.
- Το τμήμα.
2. Φόρτωση των αριθμών:
- `mov al, num1` φορτώνει τον πρώτο αριθμό στο μητρώο` al`, το οποίο χρησιμοποιείται για λειτουργίες 8-bit.
- `mov bl, num2` φορτώνει τον δεύτερο αριθμό στο μητρώο` bl`.
3. Πολλαπλασιασμός:
- `imul bl` εκτελεί τον υπογεγραμμένο πολλαπλασιασμό του` al` από το `bl '. Το αποτέλεσμα θα αποθηκευτεί στο μητρώο `ax` (16-bit).
4. Αποθήκευση του αποτελέσματος:
- `MOV αποτέλεσμα, το AX` αποθηκεύει το αποτέλεσμα 16-bit από το` ax` στη μεταβλητή `αποτέλεσμα '.
5. Προαιρετική οθόνη:
- Μπορείτε να προσθέσετε κώδικα για να εμφανίσετε το αποτέλεσμα χρησιμοποιώντας το `int 21H` με τους κατάλληλους κωδικούς λειτουργίας. Αυτό το απόσπασμα κώδικα επικεντρώνεται στον ίδιο τον πολλαπλασιασμό.
6. Έξοδος από το πρόγραμμα:
- `mov ah, 4ch` Ορίζει το` ah` εγγραφεί στον κωδικό λειτουργίας DOS για την έξοδο από το πρόγραμμα.
- `int 21h` καλεί το DOS να διακόπτει την εκτέλεση της λειτουργίας εξόδου.
Σημαντικές σημειώσεις:
-Αυτό το πρόγραμμα χρησιμοποιεί υπογεγραμμένο πολλαπλασιασμό 8-bit, πράγμα που σημαίνει ότι το αποτέλεσμα θα μπορούσε να είναι μια υπογεγραμμένη τιμή 16-bit. Η εντολή `imul` χειρίζεται αυτόματα την επέκταση του σημείου.
- Η μεταβλητή `result` δηλώνεται ως λέξη (` dw`) για να κρατήσει το αποτέλεσμα 16-bit.
- Μπορείτε να τροποποιήσετε το `num1` και το` num2` για να αλλάξετε τους αριθμούς που θέλετε να πολλαπλασιάσετε.
- Ο κωδικός συναρμολόγησης θα πρέπει να συναρμολογηθεί χρησιμοποιώντας ένα συναρμολογητή όπως το MASM ή το TAMS και στη συνέχεια να συνδεθεί για να δημιουργήσει ένα εκτελέσιμο αρχείο.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα