Σημειώσεις για τον 80x86

Σχετικά έγγραφα
Αρχιτεκτονική-Ι Ενότητα 5:

Θ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 4: Το Προγραμματιστικό Μοντέλο του 8086

Στοιχεία από Assembly Γιώργος Μανής

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

Προηγμένοι Μικροεπεξεργαστές. Φροντιστήριο 2 Addressing

Αρχιτεκτονική Υπολογιστών

Καταχωρητές & τμήματα μνήμης του Ματθές Δημήτριος Καθηγητής Πληροφορικής

Αρχιτεκτονική Υπολογιστών

ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ

Αρχιτεκτονική Υπολογιστών

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

Καταχωρητές γενικής χρήσης και δεδοµένων (Data Registers)

Αρχιτεκτονική Υπολογιστών

Ο 8086 µπορεί να θεωρηθεί ότι αποτελείται από δύο τµήµατα επεξεργαστές, όπως φαίνεται και στο σχήµα 1, οι οποίοι είναι:

ΘΕΜΑΤΑ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ-ΙΙ

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονική x86(-64) 32-bit και 64-bit λειτουργία. Αρχιτεκτονική x86(-64) Αρχιτεκτονική επεξεργαστών x86(-64) Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Πρόχειρες Σημειώσεις. Θ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών

Προηγμένοι Μικροεπεξεργαστές. Έλεγχος Ροής Προγράμματος

Θ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Οδηγός Εκμάθησης στην Assembly

Αρχιτεκτονική Υπολογιστών

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

0100: MAR ADR; wait;mdr DB; SCR L DH+MDR+CY

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική υπολογιστών

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

Επιμέλεια: ρ. Ν. Σγούρος ρ. Ι. Κονταξάκης

Αρχιτεκτονική Υπολογιστών

ΜΑΘΗΜΑ: ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΘΕΜΑΤΑ ΙΟΥΝΙΟΥ 2014

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

«ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ» ΕΣΩΤΕΡΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Εντολές του MIPS (2)

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 4 - Editor

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2)

Συστήματα Μικροϋπολογιστών

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών ARM και x86

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Υ

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

; Γιατί είναι ταχύτερη η λήψη και αποκωδικοποίηση των εντολών σταθερού μήκους;

1. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΟΥ Μ/Ε ΕΣΩΤΕΡΙΚΟΙ ΚΑΤΑΧΩΡΗΤΕΣ

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική υπολογιστών

Συστήματα Μικροϋπολογιστών

Αρχιτεκτονική Υπολογιστών Ι

Αρχιτεκτονική υπολογιστών

Εργαστήριο ΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό.

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

Εντολές γλώσσας μηχανής

Σύγχρονες Αρχιτεκτονικές Υπολογιστών

Αρχιτεκτονικές Συνόλου Εντολών (ΙΙ)

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Τρίτη (3 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Αρχιτεκτονική Υπολογιστών

Ο 8086 µπορεί να θεωρηθεί ότι αποτελείται από δύο τµήµατα επεξεργαστές, όπως φαίνεται και στο σχήµα 1, οι οποίοι είναι:

Οργάνωση επεξεργαστή (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

ΠΛΕ- 074 Αρχιτεκτονική Υπολογιστών 2

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Οργάνωση Υπολογιστών (Ι)

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 6 ο και 7 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονικές Συνόλου Εντολών

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ. ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ

ΧΡΗΣΗ ΠΛΗΚΤΡΟΛΟΓΙΟΥ, ΟΘΟΝΗΣ ΚΑΙ INTERRUPTS ΣΤΟΝ EMULATOR

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι

ΠΕΡΙΕΧΟΜΕΝΑ 1. Υπορουτίνες Μαθηµατικών Πράξεων 1.1. Προσηµασµένοι και απροσήµαστοι αριθµοί 1.2. Μετατροπές προσηµασµένων και απροσήµαστων αριθµών

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ ΠΑΡΑΡΤΗΜΑ ΚΑΣΤΟΡΙΑΣ ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ.

Ποια πρόταση είναι αληθής για τον Μ/Ε 8088: Είναι Μ/Ε 16bit, LSI, 40 pins, 20 γραμμές διευθύνσεων, 8 γραμμές δεδομένων

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική-ΙΙ Μέρος 2 ο

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 3: Εντολές λογικών πράξεων και εντολές κλήσης ρουτινών

Αρχιτεκτονική Υπολογιστών

Εργαστήριο 4. Εαρινό Εξάμηνο ΠΡΟΣΟΧΗ: Αρχίστε νωρίς το Εργαστήριο 4. Οι ασκήσεις είναι πιο απαιτητικές από τα προηγούμενα εργαστήρια.

Αριθμητικά Συστήματα

Συστήματα Μικροϋπολογιστών

Διαδικασίες Ι. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 4

ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ ΦΕΒ 2014 Καθηγητής: Νικολαΐδης Νικ. Ημ/νία εξέτασης:

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΙΙ Εργαστήριο 2 ο ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ- ΨΕΥΔΟΕΝΤΟΛΕΣ ΜΑΚΡΟΕΝΤΟΛΕΣ- ΔΙΑΔΙΚΑΣΙΕΣ (ΕΙΣΑΓΩΓΗ)

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Κύρια μνήμη. Μοντέλο λειτουργίας μνήμης. Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (ΙI)

Transcript:

Σημειώσεις για τον 80x86

Τι είναι η διεύθυνση; 16bits 0000h 0001h 0002h 8bits 20h 32h 30h Η μνήμη ενός μικροϋπολογιστικού συστήματος χωρίζεται σε μικρά τμήματα του ενός byte FFFEh 30h 2 16 =65,536 bytes Κάθε byte έχει μια ξεχωριστή ταυτότητα που ονομάζεται διεύθυνση FFFFh 36h Χάρτης μνήμης ενός τυπικού 8bit μικροϋπολογιστικού συστήματος με 16bit address bus Οι διευθύνσεις είναι αριθμητικές τιμές μήκους σε bit όσο το address bus (δίαυλος διευθύνσεων)

Πρόσβαση στη μνήμη 0018h 0019h 001Ah 32h 30h 30h Για να έχουμε πρόσβαση σε ένα ή περισσότερα bytes, πρέπει να γνωρίζουμε τις διευθύνσεις τους στο χάρτη μνήμης 001Bh 36h Αποθήκευση κειμένου «2006» στη μνήμη Στον 80x86 τηρείται η Little Endian μορφή αποθήκευσης δεδομένων. Τα χαμηλά bytes αποθηκεύονται σε χαμηλές (αριθμητικά) διευθύνσεις. 001Ch 001Dh 06h 20h Αποθήκευση αριθμού 2006h στη μνήμη

Διαχείριση μνήμης στον 80x86 Ο 80x86 είναι επεξεργαστής των 16bits με address bus μήκους 20bits Διευθυνσιοδοτεί 1Mbyte μνήμης (2 20 bytes) Πρόβλημα: Ο καταχωρητής διεύθυνσης επόμενης εντολής (IP) έχει μήκος 16bits και δεν μπορεί να δει ολόκληρη τη μνήμη που προσφέρει το address bus Λύση: Η μνήμη διασπάται σε πολλαπλά λογικά τμήματα (segments) των 64kBytes Κάθε τμήμα μπορεί να ξεκινά (βάση τμήματος) ανά 16 θέσεις στη φυσική διεύθυνση της μνήμης (20bit) και να επιτρέπει στον επεξεργαστή να δει τις επόμενες 64k θέσεις που ακολουθούν

Διαχείριση μνήμης στον 80x86 Ο προγραμματιστής χρειάζεται να ξέρει μόνο την 16bit λογική διεύθυνση που δείχνει μέσα στο τμήμα, χωρίς να χρειάζεται συνήθως να γνωρίζει την 20bit φυσική διεύθυνση Το λειτουργικό σύστημα βρίσκει ελεύθερο χώρο στη μνήμη και εκεί τοποθετεί τα τμήματα ενός προγράμματος όταν το φορτώνει προς εκτέλεση, κατόπιν ορίζει τους καταχωρητές τμημάτων, IP και SP

Υπολογισμός φυσικής διεύθυνσης 16bit 16bit IP=5678h General Purpose Register File CS DS SS ES CS=1234h 20bit 0 0 20bit 05678h + 179B8h 12340h 20bit Φυσική Διεύθυνση

Τρόποι Διευθυνσιοδότησης Συνοπτικά Άμμεσος (Immediate) MOV AX, 1234 Με καταχωρητή (Register) MOV AX, DS Απευθείας (Direct) MOV AX, [1234h] Έμμεσος με καταχωρητή (Register Indirect) MOV AX, [BX] Με καταχωρητή βάσης και μετατόπιση (Base relative) MOV AX, [BX+2] Με καταχωρητή δείκτη (Direct indexed) MOV AX, [SI+2] Με καταχωρητή βάσης και δείκτη (Base indexed) MOV AX, BX[SI]

Άμεσος Immediate Τα δεδομένα βρίσκονται μέσα στην εντολή Ο επεξεργαστής διαβάζει τον κωδικό εντολής και τοποθετεί τα δεδομένα που ακολουθούν στον κατάλληλο καταχωρητή Τα δεδομένα μπορεί να έχουν μήκος 8 ή 16bit το οποίο καθορίζεται στον κωδικό εντολής και από το μήκος του καταχωρητή προορισμού Reg[dst] Imm

Code Segment Data Segment AH AL 0100h B8h 1000h BH BL 0101h 08h 1001h CH CL 0102h 23h 1002h DH DL 0103h 1003h SP 0104h 1004h BP 0105h 1005h SI 0106h 1006h DI 0107h 1007h IP=0100h Φυσική Διεύθυνση Κώδικα Φυσική Διεύθυνση Δεδομένων CS=1234h 12440h DS Μεταφέρθηκαν SS Word 2308h ES ΜΟV AX, 2308h

Άμεσος Παραδείγματα MOV AX, 1000h MOV AX, 320 ADD AL, 10 MOV AL, -40 ; AH 10h, AL 00h ; AH 0000 0001b (01h) ; AL 0100 0000b (40h) ; AL AL + 0Ah ; AL 1101 1000b (D8h)

Με καταχωρητή Register Direct Τα δυο ορίσματα της εντολής είναι καταχωρητές του επεξεργαστή Ο καταχωρητής πηγής και ο καταχωρητής προορισμού έχουν πάντα το ίδιο μήκος σε bits Η εντολή αποτελείται μόνο από τον κωδικό εντολής και δεν έχει άλλα bytes που να την αποτελούν Το περιεχόμενο του καταχωρητή πηγής αντιγράφεται στον καταχωρητή προορισμού (μεταφορά δεδομένων) Reg[dst] Reg[src]

Code Segment Data Segment AH 4Dh AL 23h 0100h 8Eh 1000h BH BL 0101h D8h 1001h CH CL 0102h 1002h DH DL 0103h 1003h SP 0104h 1004h BP 0105h 1005h SI 0106h 1006h DI 0107h 1007h IP=0100h Φυσική Διεύθυνση Κώδικα Φυσική Διεύθυνση Δεδομένων CS=1234h 12440h 12441h DS SS ES 4D23h ΜΟV DS, DL, AH AX Μεταφέρθηκαν Word Byte 4D23h 4Dh

Με καταχωρητή Παραδείγματα MOV DS, AX MOV DL, AL MOV AH, AL MOV BL, AH MOV AX, CX ; DS AX ; DL AL ; AH AL ; BL AH ; AX CX

Απευθείας Direct Η εντολή περιέχει μια 16bit λογική διεύθυνση Η λογική διεύθυνση συνδυάζεται με τη βάση του τμήματος που χρησιμοποιείται για να σχηματίσει τη φυσική διεύθυνση Εξ ορισμού, ο καταχωρητής τμήματος είναι ο DS Τα 8 ή 16bit δεδομένα που ορίζει ο κωδικός εντολής μεταφέρονται από ή προς τον καταχωρητή που ορίζει η εντολή Reg[r] = [ SegReg*16 + Imm + (0/1) ]

Code Segment Data Segment AH AL 0100h A1h 1000h BH BL 0101h 01h 1001h 08h CH CL 0102h 10h 1002h 23h DH DL 0103h 1003h SP 0104h 1004h BP 0105h 1005h SI 0106h 1006h DI 0107h 1007h IP=0100h CS=1234h DS=5678h SS ES 5678h Φυσική Διεύθυνση Κώδικα 12440h ΜΟV AX, [1001h] + Μεταφέρθηκαν Word 2308h Φυσική Διεύθυνση Δεδομένων 57781h

Απευθείας Παραδείγματα MOV AX, [1000h] ; AL DS:[1000h], AH DS:[1001h] MOV AX, [Table] ; AL DS:[Table], AH DS:[Table+1] MOV [1000h], AL ; DS:[1000h] AL MOV [1000h], AX ; DS:[1000h] AL, DS:[1001h] AH

Έμμεσος με καταχωρητή Register Indirect Η 16bit λογική διεύθυνση μετατόπισης βρίσκεται αποθηκευμένη σε κάποιον από τους καταχωρητές SI, DI, BX, BP, ο οποίος εμπεριέχεται στον κωδικό εντολής Η τιμή μετατόπισης προστίθεται κάθε φορά στον εξ ορισμού καταχωρητή τμήματος για τον χρησιμοποιούμενο καταχωρητή μετατόπισης ή με καταχωρητή τμήματος προκαθορισμένο από το χρήστη DS: BX, SI, DI SS: BP Reg[dst] [ SegReg * 16 + Reg[offset] + (0/1) ] [ SegReg * 16 + Reg[offset] + (0/1) ] Reg[src]

Code Segment Data Segment AH 4Dh AL 23h 0100h 89h 1000h BH 10h BL 04h 0101h 07h 1001h CH CL 0102h 1002h DH DL 0103h 1003h SP 0104h 1004h BP 0105h 1005h SI 0106h 1006h DI 0107h 1007h IP=0100h Φυσική Διεύθυνση Κώδικα Φυσική Διεύθυνση Δεδομένων CS=1234h 12440h 57784h DS=5678h Μεταφέρθηκαν SS Word 4D23h ES ΜΟV DL, ΜΟV AH [BX], AX

Έμμεσος με καταχωρητή Παραδείγματα MOV [BX], AL MOV SS:[BX], AL MOV [DI], AX MOV AH, [SI] MOV AH, SS:[SI] MOV AX, [BP] MOV AX, DS:[BP] MOV AX, [BX] ; DS:[BX] AL ; SS:[BX] AL ; DS:[DI] AX ; AH DS:[SI] ; AH SS:[SI] ; AX SS:[BP] ; AX DS:[BP] ; AX DS:[BX]

Με καταχωρητή βάσης & μετατόπιση Base Relative Επέκταση της έμμεσης με καταχωρητή διευθυνσιοδότησης H 16bit λογική διεύθυνση υπολογίζεται από το άθροισμα του περιεχομένου του καταχωρητή βάσης BX ή BP, και μια ακέραια σταθερή προσημασμένη τιμή μετατόπισης Η μετατόπιση μπορεί να είναι των 8bits (-128 έως + 127) ή των 16bits (- 32768 έως + 32767) Ο εξ ορισμού καταχωρητής τμήματος είναι ο DS για τον BX και ο SS για τον BP Reg[dst] [ SegReg * 16 + (BX ή BP) + offset + (0/1) ] [ SegReg * 16 + (BX ή BP) + offset + (0/1) ] Reg[dst]

Με καταχωρητή βάσης & μετατόπιση Παραδείγματα MOV [BX + 6], AL MOV [BX + 0Ah], AX MOV SS:[BX + FFh], CX ; DS:[BX + 0006h] AL ; DS:[BX + 000Ah] AX ; SS:[BX + 00FFh] CX MOV AH, [BP + 100] ; AH SS:[BP + 0064h] MOV AX, [BP-3] MOV AX, [BX-100] ; AX SS:[BP + FFFDh] ; AX DS:[BX + FF9Ch]

Με καταχωρητή δείκτη Indexed Relative Παρόμοια με τη διευθυνσιοδότηση με καταχωρητή βάσης και μετατόπιση H 16bit λογική διεύθυνση υπολογίζεται από το άθροισμα του περιεχομένου ενός εκ των καταχωρητών δείκτη SI ή DI και πιθανώς μια ακέραια σταθερή προσημασμένη τιμή μετατόπισης (8 ή 16bits) Εξ ορισμού χρησιμοποιείται ο καταχωρητής τμήματος DS, ο οποίος μπορεί να αντικατασταθεί με κάποιον άλλο από το χρήστη Reg[dst] [ SegReg * 16 + (SI ή DI) + offset + (0/1) ] [ SegReg * 16 + (SI ή DI) + offset + (0/1) ] Reg[dst]

Με καταχωρητή δείκτη Παραδείγματα MOV AL, [SI + 6] ; AL DS:[SI + 0006h] MOV ES:[DI + 100h], AL MOV [SI + 25000], AX MOV [SI - 68], AX ADD AL, ES:[DI + 10] ; ES:[DI + 0100h] AL ; DS:[SI + 61A8h] AL, ; DS:[SI + 61A9h] AH ; DS:[SI + FFBCh] AL, ; DS:[SI + FFBDh] AH ; AL AL + ES:[DI + 000Ah]

Με καταχωρητή βάσης & δείκτη Based Indexed Επέκταση της έμμεσης με καταχωρητή διευθυνσιοδότησης H 16bit λογική διεύθυνση υπολογίζεται από το άθροισμα του περιεχομένου ενός εκ των καταχωρητών βάσης BX ή BP, ενός εκ των καταχωρητών δείκτη SI ή DI και την πιθανή μετατόπιση που δίνεται με την εντολή Τα περιεχόμενα των χρησιμοποιούμενων καταχωρητών θεωρούνται ακέραιοι προσημασμένοι αριθμοί των 16bits Εξ ορισμού χρησιμοποιείται ο καταχωρητής τμήματος DS, ο οποίος μπορεί να αντικατασταθεί με κάποιον άλλο από το χρήστη Reg[dst] [ SegReg * 16 + (BX ή BP) + (SI ή DI) + offset + (0/1) ] [ SegReg * 16 + (BX ή BP) + (SI ή DI) + offset + (0/1) ] Reg[dst]

Με καταχωρητή βάσης & δείκτη Παραδείγματα MOV DX, [BX + DI] MOV DX, [BX + SI] MOV DX, [BP + DI] MOV DX, SS:[BP + DI] MOV DX, [BP + SI] MOV [BP + DI], AX MOV SS:[BP + DI], AX ; DH DS:[BX + DI + 1], DL DS:[BX + DI] ; DH DS:[BX + SI + 1], DL DS:[BX + SI] ; DH DS:[BP + DI + 1], DL DS:[BP + DI] ; DH SS:[BP + DI + 1], DL SS:[BP + DI] ; DH DS:[BP + SI + 1], DL DS:[BP + SI] ; DS:[BP + DI + 1] DH, DS:[BP + DI] DL ; SS:[BP + DI + 1] DH, SS:[BP + DI] DL

Τύποι εντολών Μεταφοράς δεδομένων Αριθμητικών πράξεων Χειρισμού bit Διακλάδωσης Διακλάδωσης με προϋποθέσεις Συμβολοσειρών Ελέγχου επεξεργαστή

Εντολές Μεταφοράς Δεδομένων mov dst, src dst src push src (SP-1) src(msb), (SP-2) src(lsb) pop dst dst(lsb) (SP), dst(msb) (SP+1)

Εντολές Αριθμητικών Πράξεων add dst, src dst dst + src adc dst, src dst dst + src + CF inc dst dst dst + 1 cmp dst, src Ενημέρωση σημαιών από αποτέλεσμα dst - src

Εντολές Λογικών Πράξεων and dst, src dst dst src or dst, src dst dst + src test dst, src Ενημερώνει σημαίες από dst src χωρίς να αλλάξει το dst shr dst, cnt Λογική ολίσθηση δεξιά cnt φορές ror dst, cnt Περιστροφή δεξιά cnt φορές

Εντολές Διακλάδωσης jmp addr Ενδοτμηματική διακλάδωση loop addr CX CX-1 και πηγαίνει στο addr αν CX 0 call addr ενδοτμηματική κλήση υπορουτίνας int n κλήση εξυπηρέτησης διακοπής

Εντολές Διακλάδωσης με προϋποθέσεις jg/jnle Άλμα για μεγαλύτερο jz/jnz Άλμα για ισότητα/ανισότητα je/jne Άλμα για ισότητα/ανισότητα

Εντολές Συμβολοσειρών scasb/scasw Σύγκριση byte/word που βρίσκονται σε συγκεκριμένες θέσεις stosb/stosw Αποθήκευση byte/word από καταχωρητή σε συγκεκριμένη θέση μνήμης repne/repz Επανάληψη όσο δεν προκύπτει ισότητα μεταξύ byte/word.

Εντολές Ελέγχου Επεξεργαστή stc CF=1 clc CF=0 std DF=1 cld DF=0