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



Σχετικά έγγραφα
Αρχιτεκτονική Υπολογιστών

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

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

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

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

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

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

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

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

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

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 5: Εντολές Συγκρίσεων και Μεταφοράς Ελέγχου. Μανόλης Γ.Η.

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

LANGUAGE OF THE MACHINE. TEI Κρήτης, Τμ. ΕΠΠ, Αρχιτεκτονική Υπολογιστών. Οργάνωση Υπολογιστή. Τυπική οργάνωση υπολογιστή

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

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

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

Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L. Hennessy. Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου

-Επεξεργαστής: datapath (δίοδος δεδοµένων) (1) και control (2) -Μνήµη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

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

Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση. Κεφάλαιο 2. Εντολές: η γλώσσα του υπολογιστή

ΠΛΕ- 027 Μικροεπεξεργαστές

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

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

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Μεταγλώτιση, σύνδεση

με έμφαση στο MIPS R2000

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

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

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

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

O επεξεργαστής: Η δίοδος δεδομένων (datapath) και η μονάδα ελέγχου (control)

1 η Ενδιάμεση Εξέταση Απαντήσεις/Λύσεις

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

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

και η µονάδα ελέγχου (control) O επεξεργαστής: Η δίοδος δεδοµένων (datapath) Εντολές διακλάδωσης (branch beq, bne) I Type Σχεδίαση datapath

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:

add $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 add $t2, $t2, $s1 int i, j, tmp; int *arr, n;

Κεφάλαιο 2. Εντολές: η γλώσσα του υπολογιστή

Κεφάλαιο 2. Εντολές: η γλώσσα του υπολογιστή

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

Τεχνολογίες ημιαγωγών. Chapter 2 Instructions: Language of the Computer 1

ΠΛΕ- 027 Μικροεπεξεργαστές

Τρόποι Διευθυνσιοδότησης

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

ΠΛΕ- 027 Μικροεπεξεργαστές 6ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση με διοχέτευση

Single Cycle Datapath. Αρχιτεκτονική Υπολογιστών. 5ο εξάμηνο ΣΗΜΜΥ ακ. έτος: Νεκ. Κοζύρης

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

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

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

AΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ (5 ο εξάμηνο) ΕΠΑΝΑΛΗΠΤΙΚΗ ΕΞΕΤΑΣΗ (ΦΘΙΝΟΠΩΡΟ 2007) ΔΙΑΡΚΕΙΑ ΕΞΕΤΑΣΗΣ: 2 ΩΡΕΣ 30 ΛΕΠΤΑ

2 η Ενδιάμεση Εξέταση Λύσεις/Απαντήσεις

Τ.Ε.Ι. Κρήτης Τμ. Μηχανικών Πληροφορικής. Αρχιτεκτονική Υπολογιστών. 3ο Μάθημα

Απλός επεξεργαστής (Επανάληψη)

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

Επεξεργαστής Υλοποίηση ενός κύκλου μηχανής

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 3: Προσπελάσεις Μνήμης στον MIPS. Μανόλης Γ.Η. Κατεβαίνης

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y»

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

ΠΛΕ- 027 Μικροεπεξεργαστές 7ο μάθημα: Αρχιτεκτονική πυρήνα: Πρόβλεψη διακλάδωσης, Εξαιρέσεις

Προτεινόμενες Λύσεις 1 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213 & Αποτελέσματα

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

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 1. Χειμερινό Εξάμηνο

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

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

Τελική Εξέταση, Απαντήσεις/Λύσεις

ΠΛΕ- 027 Μικροεπεξεργαστές 5ο μάθημα: Αρχιτεκτονική πυρήνα: υλοποίηση ενός κύκλου

Κεφάλαιο 4. Ο επεξεργαστής. Οργάνωση και Σχεδίαση Υπολογιστών Η ιασύνδεση Υλικού και Λογισµικού, 4 η έκδοση

Δείγμα Τελικής Εξέτασης στο ΗΜΥ213. Διδάσκοντας: Γιώργος Ζάγγουλος

ΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος

Chapter 5. Ο επεξεργαστής: διαδρομή δεδομένων και μονάδα ελέγχου. Ενδέκατη (11 η ) δίωρη διάλεξη.

-Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

Τέτοιες λειτουργίες γίνονται διαμέσου του

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

-Επεξεργαστής: datapath (δίοδος δεδομένων) (1) και control (2) -Μνήμη (3) -Συσκευές Εισόδου (4), Εξόδου (5) (Μεγάλη ποικιλία!!)

Συναρτήσεις-Διαδικασίες

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

Εργαστήριο Αρ. 1. Εισαγωγή στην Αρχιτεκτονική MIPS. Πέτρος Παναγή Σελ. 1

Περιγραφή αρχιτεκτονικής MIPS MIPS assembly (1o και 2o μέρος)

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

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

ΗΜΥ 213. Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών. Διδάσκων: Δρ. Γιώργος Ζάγγουλος

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

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Εργαστήριο 10: Επίδοση Επεξεργαστών, CPI. Μανόλης Γ.Η. Κατεβαίνης

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

Σχεδίαση μονάδας ελέγχου επεξεργαστή

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

Άσκηση 1 (α) Άσκηση 1 (γ) Άσκηση 1 (β) Παραδείγματα Assembly. Άρα με έλεγχο στον $t1 αποφασίζω αν είναι 0 ή 1.

Κεφάλαιο 2 Εντολές Η γλώσσα της Μηχανής (Instructions Language of the Computer)

Παραδείγματα Assembly (Μέρος

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

Διάλεξη 12 Καθυστερήσεις (Stalls) Εκκενώσεις Εντολών (Flushing)

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

Δρ. Παναγιώτης Μ. Παπάζογλου Επίκουρος Καθηγητής ΤΕΙ Λαμίας. Διδακτικό βοήθημα γρήγορης μελέτης για τον προγραμματισμό του μικροεπεξεργαστή MIPS 32bit

Πανεπιστήμιο Θεσσαλίας Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

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

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

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

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

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

Transcript:

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly Αρης Ευθυμίου

Το σημερινό μάθημα! Σύνταξη εντολών! Θέματα σχετικά με τη προσπέλαση, οργάνωση μνήμης διευθύνση για κάθε byte διευθύνσεις λέξεων ευθυγράμμιση Big/LiNle Endian παραλλαγή της lw που είναι ψευτοεντολή! Συγκρίσεις & διακλαδόσεις if- then- else while σύγκρίσεις ανισότητας 2

Σύνταξη εντολών πράξη προορισμός, 1η πηγή, 2η πηγή! Η μορφή των εντολών είναι άκαμπτη (rigid): πάντα μία πράξη, 3 τελεσταίοι (operands) 1ος τελεσταίος είναι ο προορισμός (descnacon operand) 2ος τελεσταίος είναι η 1η πηγή (1st source operand) 3ος τελεσταίος είναι η 2η πηγή (2nd source operand) η σειρά των πηγών έχει σημασία για πράξεις όπως η αφαίρεση 3

Σταθερές! Αγγλικό όρος (ειδικά για assembly): immediate άμεσα διαθέσιμες τιμές δεν χρειάζεται καν ανάγνωση καταχωρητή! MIPS: εντολές με μία σταθερά αντί για καταχωρητή πηγής! Οι σταθερές είναι σχετικά μικρές 16 bit σε κάποιες εντολές μπορεί να είναι και αρνητικοί αριθμοί addi $t0, $t0, - 1 # t0 = t0-1 4

Διευθύνσεις μνήμης! Η μνήμη θεωρείται ότι είναι ένας τεράστιος πίνακας! Ο MIPS εσωτερικά δουλεύει με λέξεις (word) 32 bit! Aλλά χρειαζόμαστε τη δυνατότητα να διαβάζουμε/ γράφουμε bytes (8bit) για «μικρά» δεδομένα: χαρακτήρες, boolean,! Συμπεράσματα οι διευθύνσεις μνήμης είναι σε bytes! αλλιώς: κάθε byte της μνήμης έχει ξεχωριστή διεύθυνση υπάρχει δυνατότητα απευθείας προσπέλασης και για bytes και για λέξεις 5

Μνήμη: προσπέλαση λέξης! Ποιά είναι η διεύθυνση μιας λέξης στη μνήμη; η διεύθυνση του πρώτου byte της λέξης! Εστω μία λέξη στη διεύθυνση Α. Ποιά είναι η διεύθυνση της επόμενης λέξης; A + 4 όχι Α + 1! Πολύ συνηθισμένο λάθος. 6

Endianess bit 31 4 Big Endian 5 6 word 4 bit 0 7 0 1 2 3 byte0 byte1 byte2 byte3 bit 31 7 Little Endian 6 5 word 4 bit 0 4 3 2 1 0 byte3 byte2 byte1 byte0 figure source: wikipedia, endianess 7

Μνήμη: ευθυγράμμιση! Μπορώ να βάζω λέξεις σε όποια διεύθυνση μνήμης θέλω;! Στον MIPS, όχι πρέπει να είναι ευθυγραμμισμένες (aligned) οι διευθύνσεις πρέπει να είναι πολλαπλάσιες του 4 0 1 2 3 8

Σχηματισμός διεύθυνσης! Στον MIPS η διεύθυνση μνήμης υπολογίζεται από έναν καταχωρητή (η τιμή του ονομάζεται base address) μία σταθερά (ονομάζεται offset) η διεύθυνση (όνομα effeccve address) είναι το άθροισμα των τιμών των παραπάνω! Συμβολισμός: σταθερά (όνομα καταχωρητή) π.χ. 8($s3)! Δεν μπορούν να χρησιμοποιηθούν 2 καταχωρητές μπορεί να γίνει με επιπλέον εντολές μόνο! Δεν μπορεί να χρησιμοποιηθεί 1 σταθερά μόνο 9

Σύνταξη εντολών μεταφοράς πράξη 1ος καταχ., σταθερά(καταχ. βάσης)! Πράξη: lw (load word) ανάγνωση λέξης 32b από τη μνήμη sw (store word) εγγραφή λέξης 32b από τη μνήμη! 1ος καταχωρητής για load, εκεί θα αποθηκευτεί η τιμή για store, από εκεί θα διαβαστεί η τιμή! Παράδειγμα: lw $s0, 0xc($t1) # s0 = Mem[$t1+12] 10

Ψευτοεντολή lw! Δυστυχώς ο Mars επιτρέπει να χρησιμοποιηθεί η lw/lb... ως εξής: lw $s0, label! Αυτή η μορφή της lw είναι ψευτοεντολή αν κάνετε assemble θα δείτε 2 εντολές στο text segment: lui $at, 0x1001 # τα αριστερά 16 bit της διεύθυνσης lw $s0, 0008($at) # τα δεξιά 16 bit της διεύθυνσης! Η label είναι μια διεύθυνση μνήμης οι διευθύνσεις είναι μεγάλοι αριθμοί, χρειάζονται >16 bit Δεν μπορεί να γίνει με μία εντολή MIPS 11

Υπολογισμός διεύθυνσης! Μετάφραστε σε assembly g = a[i] g - $s1, i - $s2, a[] array λέξεων με βάση (a[0]) στον $s3! Ποιό είναι το offset; i (θέση πίνακα) 4 (bytes ανά θέση)! Περίπτωση 1: το i είναι σταθερά μέχρι 16 bit (μπορει να είναι < 0) έστω i = 8 lw $s1, 32($s3) # $s1 = a[8] 12

Υπολογισμός διεύθυνσης 2! Περίπτωση 2: το i είναι μεταβλητό και αντιστοιχεί π.χ. στον $s0 sll $t0, $s0, 2 # $t0 = i * 4 add $t0, $t0, $s3 # $t0 = $s3 + i *4 lw $s1, 32($t0) # $s1 = a[i] 13

Υπολογισμός διεύθυνσης 3! Περίπτωση 3 «δείκτης αντί για πίνακα» η προσπέλαση στοιχείων πίνακα γινεται με σταθερή σειρά, π.χ. αύξουσα κατά 1 στοιχείο add $t0, $s3, $zero # $t0 points to a[0] loop: lw $s0, 0($t0) # Note offset is 0 addi $t0, $t0, 4 # $t0 points to next # element of a[] 14

Δείκτες και δεδομένα! Ενας καταχωρητής κρατά οποιαδήποτε τιμή 32 bit μπορεί να είναι δείκτης στη μνήμη μπορεί να είναι ο αριθμός των φοιτητών στην τάξη! Και στις δύο περιπτώσεις έχουν νόημα αριθμητικές πράξεις διαφορετικό νόημα βέβαια!! Αλλά προσοχή: μη κάνετε προσπέλαση μνήμης χρησιμοποιώντας ως δείκτη καταχωρητή που περιέχει δεδομένα! Ο s0 πρέπει να είναι δείκτης: lw $t0, 0($s0) δεν υπάρχει κάτι (π.χ. Java interpreter) να πιάσει το λάθος 15

Εντολές διακλάδοσης! Κάνουν 2 «δουλειές»: 1. Ελεγχος απλής συνθήκης! μόνο ισότητα ή ανισότητα μεταξύ καταχωρητών 2. αν η συνθήκη δεν ισχύει, συνέχεια εκτέλεσης από την επόμενη εντολή, αλλιώς από μια άλλη διεύθυνση (δίνεται στην εντολή)! beq r1, r2, target! bne r1, r2, target! Ολες οι υπόλοιπες παραλλαγές που επιτρέπει ο Mars είναι ψευτοεντολές και απαγορεύονται για τις ασκήσεις!! Εντολή άλματος (jump), χωρίς συνθήκη j target 16

Παράδειγμα if (i == j) f = g+h else f = g- h i $s3 f $s0 g $s1 j $s4 h $s2 bne $s3, $s4, else add $s0, $s1, $s2 j skip else: sub $s0, $s1, $s2 skip:..... 17

Επαναλήψεις - loops! Δεν υπάρχουν ειδικές εντολές για επαναλήψεις υλοποιούνται με διακλαδώσεις, άλματα προς τα πίσω (πάνω) sum = 0 while (i!= 0) sum = sum + i i = i - 1 sum $s0 i $s1 add $s0, $zero, $zero loop: beq $s1, $zero, exitloop add $s0, $s0, $s1 addi $s1, $s1, - 1 j loop exitloop:..... 18

Συγκρίσεις ανισότητας! Μερικές φορές δεν αρκεί έλεγχος ισότητας ή ανισότητας αν και είναι ο πιο συνηθισμένος τύπος ελέγχου! Χρειάζεται να ελεγθεί αν ένας αριθμός είναι μικρότερος! Εντολή MIPS slt set on less than μη την μπερδεύετε με τις εντολές ολίσθησης (sll, srl) Σύνταξη: slt rdest, rsrc1, rsrc2 Αν τιμή του rsc1 < τιμή rsrc2, rdest " 1, αλλιώς rdest " 0 19

Διακλάδωση με συνθήκη < Μετατροπή σε assembly: if (g >= h) εντολή 1 εντολή 2 g $s0, h $s1 slt $t0, $s0, $s1 # t0 = (g < h) bne $t0, $zero, less # if (t0==1) goto less εντολή 1 less: εντολή 2 20

Συνθήκες ανισότητας! Δεν υπάρχει εντολή set if greater than απλά αλλάζει η σειρά των καταχωρητών if (g < h) εντολή 1 εντολή 2 slt $t0, $s0, $s1 # t0 = (g < h) beq $t0, $zero, geq # if (t0==0) goto geq εντολή 1 geq: εντολή 2 21

Εντολές MIPS, μέρος 1ο shi right arithmecc sra $s1, $s2, 10 22

Εντολές MIPS, μέρος 2ο Στο επόμενο μάθημα 23

Σύνοψη κωδικοποίηση εντολών I- Format: Εντολές με σταθερές (π.χ. addi), lw/sw,beq/bne Αλλά όχι για τις εντολές ολίσθησης (sll, srl, sra) Οι διακλαδόσεις χρησιμοποιούν PC- relacve addressing I: opcode rs rt immediate J- Format: j J: opcode target address R- Format: όλες οι υπόλοιπες εντολές R: opcode rs rt rd shamt funct 24

Επόμενο μάθημα MIPS assembly Συνέχεια Υποστήριξη υπορουτινών σε assembly, στοίβα 25