Translate MIPS assembly language Using byte addressed memory

Translate MIPS assembly language.

+Using byte addressed memory and the following register assignments

i=$s0

j=$s1

k=$s2

starting address a = $s3

starting address b = $s4

========Translate MIPS assembly language.==============

a) i = j +21;

-------------------------------------------

b) k = i – ( j + k )

-------------------------------------------

c) j = b[2] * 8

-------------------------------------------

d) b[2*j] = 10;

-------------------------------------------

f) a[i]++

-------------------------------------------

Solution

1) i = j + 21;

addi $s0,$s1,21   #adding 21 to $s1 and assiging into $s0

2) k = i - (j + k)
   $s2 = $s0 - ($s1 + $s2)

add $to,$s1,$s2   #$t0 = $s1+$s2
sub $t1,$s0,$to   #$t1 = $s0-$to
move $s2,$t1

3) j = b[2] * 8
$s1 = $s4[2] * 8

lw $s4, 0($sp)   #b[2]
mult $s4,8       #b[2] * 8
move $s1,$s4     #$s1 = $s4

4)b[2*j] = 10;
$s4[2*$s1] = 10;

mult 2,$s1        #2*$s1
lw $s4, 1($s1)    #$s4[2*$s1]
sw $s4,10         #store #s4[2*$s1] = 10

Translate MIPS assembly language. +Using byte addressed memory and the following register assignments i=$s0 j=$s1 k=$s2 starting address a = $s3 starting addres

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site