You are on page 1of 24

MIPS instructions illustrated

 Σε κάθε διαφάνεια δείχνουμε παραστατικά


την εκτέλεση χαρακτηριστικών εντολών
του MIPS: βασική λειτουργία (πράξη,
ενέργεια), καταχωρητές και λέξεις
μνήμης που μετέχουν.
 Ανάλογα με την εντολή, οι τιμές των
καταχωρητών και των λέξεων μνήμης μπορεί
να παρουσιάζονται στο δεκαδικό, το δυαδικό ή
το δεκαεξαδικό σύστημα αρίθμησης

MIPS illustrated— 1
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
add $s2, $s1, $s0
Memory
Address
0
4
8
CPU …

$s1=24

$s0=9 +

$s2=33

pc=pc+4

MIPS illustrated— 2
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
sub $s2, $s1, $s0
Memory
Address
0
4
8
CPU …

$s1=24

$s0=9 -

$s2=15

pc=pc+4

MIPS illustrated— 3
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
addi $s2, $s1, -5
Memory
Address
0
4
8
CPU …

$s1=24

-5 +

$s2=19

pc=pc+4

MIPS illustrated— 4
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
and $s2, $s1, $s0
Memory
Address
0
4
8
CPU …

$s1=0x0000FFFF

$s0=0x000FFF00
and

$s2=0000FF00

pc=pc+4

MIPS illustrated— 5
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
or $s2, $s1, $s0
Memory
Address
0
4
8
CPU …

$s1=0x0000FFFF

$s0=0x000FFF00
or

$s2=000FFFFF

pc=pc+4

MIPS illustrated— 6
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
lw $s2, 24($s1)
Memory
Address
0
4
8
CPU …

$s1=1500
1524 35 000
24
+

$s2=35000

pc=pc+4

MIPS illustrated— 7
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
sw $s2, 48($s1)
Memory
Address
0
4
8
CPU …

$s1=1500

48 +

1548 45000
$s2=45000
store data

pc=pc+4

MIPS illustrated— 8
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
slt $s2, $s1, $s0
Memory
Address
0
4
8
CPU …

$s1=0xFFFFFFFF

$s0=0x00000001
slt

$s2=00000001

pc=pc+4

MIPS illustrated— 9
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
sltu $s2, $s1, $s0
Memory
Address
0
4
8
CPU …

$s1=0xFFFFFFFF

$s0=0x00000001
sltu

$s2=00000000

pc=pc+4

MIPS illustrated— 10
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
lb $s2, 24($s1)
Memory
Address
0
4
8
CPU …

$s1=1500
1524 0xABCD00A5
24
+

$s2=0xFFFFFFA5

pc=pc+4

MIPS illustrated— 11
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
lbu $s2, 24($s1)
Memory
Address
0
4
8
CPU …

$s1=1500
1524 0xABCD00A5
24
+

$s2=0x000000A5

pc=pc+4

MIPS illustrated— 12
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
sb $s2, 48($s1)
Memory
Address
0
4
8
CPU …

$s1=1500

48 +

1548 0xXXXXXX44
$s2=0x11223344
store data

pc=pc+4

MIPS illustrated— 13
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
lh $s2, 24($s1)
Memory
Address
0
4
8
CPU …

$s1=1500
1524 0xABCDB2A5
24
+

$s2=0xFFFFB2A5

pc=pc+4

MIPS illustrated— 14
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
lhu $s2, 24($s1)
Memory
Address
0
4
8
CPU …

$s1=1500
1524 0xABCDB2A5
24
+

$s2=0x0000B2A5

pc=pc+4

MIPS illustrated— 15
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
sh $s2, 48($s1)
Memory
Address
0
4
8
CPU …

$s1=1500

48 +

1548 0xXXXX3344
$s2=0x11223344
store data

pc=pc+4

MIPS illustrated— 16
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
sll $s2, $s1, 3
Memory
Address
0
4
8
CPU …

$s1=0x000000AC

sll

$s2=00000560

pc=pc+4

MIPS illustrated— 17
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
srl $s2, $s1, 5
Memory
Address
0
4
8
CPU …

$s1=0x000000AC

sll

$s2=00000005

pc=pc+4

MIPS illustrated— 18
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
beq $s2, $s1, L
Memory
Address
0
4
8
CPU …

$s1=15 $s2=15

beq

pc=L L

MIPS illustrated— 19
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
beq $s2, $s1, L
Memory
Address
0
4
8
CPU …

$s1=15 $s2=35

beq pc+4

pc=pc+4

MIPS illustrated— 20
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
bne $s2, $s1, L
Memory
Address
0
4
8
CPU …

$s1=15 $s2=49

beq

L
pc=L

MIPS illustrated— 21
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
bne $s2, $s1, L
Memory
Address
0
4
8
CPU …

$s1=49 $s2=49

beq pc+4

pc=pc+4

MIPS illustrated— 22
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
jL
Memory
Address
0
4
8
CPU …

L
pc=L

MIPS illustrated— 23
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών
jr $ra
Memory
Address
0
4
8
CPU …

$ra=L

jr

pc=L L

MIPS illustrated— 24
Δημήτρης Γκιζόπουλος, Πανεπιστήμιο Αθηνών

You might also like