Translate the following loop into C. Assume that the C-level integer i is held i
ID: 3675820 • Letter: T
Question
Translate the following loop into C. Assume that the C-level integer i is held in register $t1, $s2 holds the C-level integer called result, and $s0 holds the base address of the integer MemArray.addi$t1, $0, $0 Loop: lw$s1, 0($s0) add$s2, $s2, $s1 addi$s0, $s0, 4 addi$t1, $t1, 1 slti$t2, $t1, 100 bne$t2, $s0, Loop
Translate the following loop into C. Assume that the C-level integer i is held in register $t1, $s2 holds the C-level integer called result, and $s0 holds the base address of the integer MemArray.
addi$t1, $0, $0 Loop: lw$s1, 0($s0) add$s2, $s2, $s1 addi$s0, $s0, 4 addi$t1, $t1, 1 slti$t2, $t1, 100 bne$t2, $s0, Loop
addi$t1, $0, $0 Loop: lw$s1, 0($s0) add$s2, $s2, $s1 addi$s0, $s0, 4 addi$t1, $t1, 1 slti$t2, $t1, 100 bne$t2, $s0, Loop
addi$t1, $0, $0 Loop: lw$s1, 0($s0) add$s2, $s2, $s1 addi$s0, $s0, 4 addi$t1, $t1, 1 slti$t2, $t1, 100 bne$t2, $s0, Loop addi$t1, $0, $0 Loop: lw$s1, 0($s0) add$s2, $s2, $s1 addi$s0, $s0, 4 addi$t1, $t1, 1 slti$t2, $t1, 100 bne$t2, $s0, Loop
Explanation / Answer
Hello, i will answer your question gladly :D
What this loop is doing, is the sum of the elements of an array(located in $s0). The program does the following:
So, translating the code into C, that would be:
for(i=0;i<100;i++){
result=result+ MemArray[i];
}
If you have any doubts, you can contact me by this way. Have a nice day! :D
Related Questions
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.