next up previous
Next: Problem 1 Up: work3 Previous: work3

The MIPS Code Fragment





  DADDI R4, R0, # 5200 ; make a float 5200
  MTC1 F4, R4  
  CVT.L.D F4, F4 ; F4 has a float constant
  DADD R1,R0,R0 ; init counter to 0
Loop: L.S F2,100(R1) ; F2 is array element,
      ; R1 has offset of lowest unused array element
  L.S F3,500(R1) ; F3 holds array element
  SUB.S F5,F3,F2 ; perform subtraction
  ADD.S F5,F5,F4 ; perform addition of a constant
  S.S 1000(R1),F5 ; store the result
  DADDI R1,R1,#4 ; increment pointer
  DADDI R5,R1,#-400 ; check pointer
  BNEZ R5,Loop ; branch while not done
  DADDI R8, R8, #12348 ; A fancy place holder-don't analyze





next up previous
Next: Problem 1 Up: work3 Previous: work3
MM Hugue 2002-10-17

Web Accessibility