Τρόποι
διευθυνσιοδότησης στον DLX
Oι τρόποι διευθυνσιοδότησης δεδομένων στον DLX είναι δύο:
Aπευθείας (με πεδίο 16-bits για τη τιμή του απευθείας δεδομένου)
Mετατόπιση (με πεδίο 16-bits για τη μετατόπιση)
Οι δύο παραπάνω τρόποι διευθυνσιοδότησης εφαρμόζονται ως εξής:
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 1
ΑΠΑΝΤΗΣΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑΣ 1
Σε όλες τις αριθμητικές και λογικές εντολές στις οποίες δεν χρησιμοποιείται o απευθείας τρόπος διευθυνσιοδότησης, στον κωδικό λειτουργίας βρίσκεται κωδικοποιημένη η πληροφορία ότι η εντολή είναι μια αριθμητική / λογική εντολή και υπονοείται ότι χρησιμοποιείται ο τρόπος διευθυνσιοδότησης άμεσος καταχωρητή. Δηλαδή τόσο οι πηγαίοι τελεστέοι όσο και ο τελεστέος προορισμού είναι περιεχόμενα καταχωρητή.
Παράδειγμα
Στην εντολή LB R5, 100(R1) η διεύθυνση του πηγαίου τελεστέου υπολογίζεται προσθέτοντας τη τιμή 100 με το περιεχόμενο του καταχωρητή R1. Το αποτέλεσμα αυτής της πρόσθεσης είναι η διεύθυνση μιας θέσης στη μνήμη. Γίνεται ανάγνωση του περιεχομένου της θέσης μνήμης και στη συνέχεια καταχωρείται στον καταχωρητή R5.
Ο τρόπος διευθυνσιοδότησης έμμεσος καταχωρητή προκύπτει χρησιμοποιώντας ως τιμή μετατόπισης την τιμή 0. Έτσι για παράδειγμα στην εντολή LB R3, 0(R5) παρατηρούμε ότι η τιμή της μετατόπισης είναι 0. Στην εντολή αυτή, η διεύθυνση του πηγαίου τελεστέου υπολογίζεται προσθέτοντας την τιμή 0 στο περιεχόμενο του καταχωρητή R5. Δηλαδή, η διεύθυνση του πηγαίου τελεστέου είναι το περιεχόμενο του καταχωρητή R5 (έμμεσος καταχωρητή). Το περιεχόμενο της θέσης μνήμης που έχει τη διεύθυνση αυτή διαβάζεται και στη συνέχεια καταχωρείται στον καταχωρητή R3.
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 2
Παρατηρούμε
ότι στον DLX μας προσφέρονται τέσσερις τρόποι διευθυνσιοδότησης, παρά το
γεγονός ότι ο DLX υποστηρίζει μόνο δύο.
![]() |
![]() |
![]() |
![]() |
![]() |