For the following C statement, what is the corresponding MIPS assembly code? Assume that the C variables a, b, and c, have already been placed in registers $s0, $s1, $s2, respectively. Use a minimal number of MIPS assembly instructions. a = b + (c − 5);
2. For the following C statement, what is the corresponding MIPS assembly code? Assume that the C variables a, b, and c, have already been placed in registers $s0, $s1, $s2, respectively. Use a minimal number of MIPS assembly instructions.
a = b + (c − 5);
3. For the following C statement, write the corresponding MIPS assembly code. Assume that the variables f, g, h, i, and j are assigned to registers $s0, $s1, $s2, $s3, and $s4, respectively. Assume that the base address of the arrays A and B are in registers $s6 and $s7, respectively.
B[i-j] = A[8];
4.Translate the following C code to MIPS. Assume that the variables, f,g. h, i, and j are assigned to registers $s0, $s1, $s2, $s3, $s4, and $s4, respectively. Assume that the base address of A and B are in registers $s6 and $s7, respectively. Assume that the elements of the arrays A and B are 8-byte words:
B[8] = A[i] + A[j];
5.For the MIPS assembly instructions below, what is the corresponding C statement? Assume that the variables f, g, h, i, and j are assigned to registers $s0, $s1, $s2, $s3, and $s4, respectively. Assume that the base address of the arrays A and B are in registers $s6 and $s7, respectively. You must add line comments to ALL uncommented 4 lines.
sll $t0, $s0, 2 # $t0 = f * 4
add $t0, $s6, $t0 # $t0 = &A[f]
sll $t1, $s1, 2 # $t1 = g * 4
add $t1, $s7, $t1 # $t1 = &B[g]
lw $s0, 0($t0) # f = A[f]
addi $t2, $t0, 8 # f = A[f] + A[f+1]
lw $t0, 0($t2) # ADD YOUR COMMENT
add $t0, $t0, $s0 # ADD YOUR COMMENT
sw $t0, 0($t1) # ADD YOUR COMMENT
Trending now
This is a popular solution!
Step by step
Solved in 2 steps