This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: SOLUTIONS Activity #04 Last Name First Name Student ID Number email 4.1 4.2 Total Grader Initials 50 points 50 points 100 points Activity 4.1 (First hour) 1(40) . (a) (10) Translate the C statement a = ( b + c ) to MIPS code. Assume that a, b, c are associated with registers $s1, $s2, $s3 , respectively. add $s1,$s2,$s3 # $s1=b+c Grading: 10 pts for correct, 5 for valid instruction (b) (10) Translate the C statement a = ( b-c )+( b+d ) to MIPS code without using any temporary registers. Assume that the addresses of a, b, c, d are in registers $s0, $s1, $s2, $s3 , respectively. You will need 3 instructions: b+b; b+b-c; b+b-c+d. add $s0,$s1,$s1 # $s0=b+b sub $s0,$s0,$s2 # $s0=$s0-c=b+b-c add $s0,$s0,$s3 # $s0=$s0+d=b+b-c+d Grading: 10 for correct, 5 for any syntactically correct code. The operations can be done in any order. (c) (20) Translate the C statement a = b - C[i] to MIPS code. Assume that C is an array whose base register address (i.e., the address of C) is in $s1 and that the addresses Assume that C is an array whose base register address (i....
View Full Document
- Fall '07
- Assembly Language, Binary numeral system, MIPS code, Temp reg