Advertisement
Guest User

Untitled

a guest
Feb 25th, 2020
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. .data 0x10010000
  2.  
  3. met : .word 3,4,2,3
  4. .word 5,2,2,3
  5. .word 3,4,2,3
  6. .word 3,0,4,5
  7.  
  8. sinput: .word 2,0,2,2
  9.  
  10. soutput: .word 0,0,0,0
  11.  
  12.  
  13. .text 0x400000
  14.  
  15. .globl main
  16.  
  17. main:
  18. li $s0, 4 #Constante N = 4
  19. li $a0, 0
  20. la $a0, met
  21. li $a1, 0
  22. la $a1, sinput
  23. li $a2, 0
  24. la $a2, soutput
  25.  
  26.  
  27. jal asc
  28.  
  29. li $v0, 10
  30. syscall
  31. asc:
  32.  
  33. li $t0, 0 #i
  34. li $t1, 0 #index i
  35. li $t2, 0 #j
  36. li $t3, 0 #index j
  37. li $t4, 0 #temp
  38. li $t5, 0 #valeur met
  39. li $t6, 0 #Valeur de sinput
  40. li $t7, 0 #valeur de soutput
  41. li $t8, 0 #registre foure-tout
  42. acs_bouclei:
  43.  
  44. addi $t8, $0, 250
  45.  
  46. add $a2, $a2, $t1
  47. sw $t8, 0($a2) #Enregistre 250 dans soutput[i]
  48. sub $a2, $a2, $t1
  49.  
  50. add $t2, $0, $0 #reset counter
  51. add $t3, $0, $0
  52. acs_bouclej:
  53.  
  54.  
  55. sll $t8, $t1, 2
  56. add $t8, $t8, $t3 #calcul index met ( i * N + j )
  57.  
  58. add $a0, $a0, $t8
  59. lw $t5, 0($a0) # Enregistrer la valeur de met dans registre
  60. sub $a0, $a0, $t8
  61.  
  62. add $a1, $a1, $t3
  63. lw $t6, 0($a1)
  64. sub $a1, $a1, $t3
  65.  
  66. add $a2, $a2, $t1
  67. lw $t7, 0($a2) #Enregistre valeurs de tableaux
  68.  
  69.  
  70. add $t4, $t6, $t5 #temp = met[i * n + j] + sinput[j]
  71.  
  72. blt $t4, $t7, output_lower #Si temp < soutput[i], enregistre temp sinon soutput[i]
  73. output_higher:
  74. sw $t7, 0($a2)
  75. j end_if
  76. output_lower:
  77. sw $t4, 0($a2)
  78. j end_if
  79. end_if:
  80. sub $a2, $a2, $t1
  81. addi $t2, $t2, 1
  82. addi $t3, $t3, 4
  83. blt $t2, $s0, acs_bouclej #pour toutes les valeurs de j < 4
  84.  
  85.  
  86. addi $t0, $t0, 1
  87. addi $t1, $t1, 4
  88. blt $t0, $s0, acs_bouclei #pour toutes les valeurs de i < 4
  89.  
  90.  
  91. jr $ra #Exit function
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement