Advertisement
Guest User

Untitled

a guest
Nov 24th, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .text
  2. main: addi $sp, $sp, -8
  3.       sw   $ra,  4($sp)
  4.       sw   $s0,  0($sp)   #alloco un registro nello stack
  5.       lw   $a0, N         #carico N
  6.       add  $s0, $s0, $a0  #s0 = N
  7.       jal func
  8.       add $t0, $0, $0
  9.       add $t1, $0, $0
  10.       lw   $s0, 0($sp)
  11.       lw   $ra, 4($sp)
  12.       addi  $sp, $sp, 8
  13.       jr $ra
  14.  
  15.  
  16.      
  17. func: addi $sp, $sp, -4
  18.       sw   $ra,  0($sp)             #alloco un registro nello stack
  19.       beq  $s0, $0, RETURN          #se N == 0 -> RETURN
  20.       addi $s0, $s0, -1             #N = N-1
  21.       jal  func
  22.       jal  min
  23.       addi $v1, $v1, 1              #v1 = v0 + 1
  24.       lw   $ra, 0($sp)
  25.       addi $sp, $sp, 4
  26.       jr $ra
  27.    
  28. min: addi $t0, $0, 10     #t0 = 10
  29.      slt  $t1, $v1, $t0    #t0 == 1 se T(n-1)<10
  30.      beq  $t1 ,$0, somma
  31.      addi $v1, $v1, 10
  32.      jr $ra
  33.      
  34. somma: add $v1, $v1, $v1        #v0=0+$v0
  35.        jr  $ra
  36.        
  37. RETURN: add $v1,$v1, $0
  38.         jr  $ra
  39.      
  40. .data
  41.     N: .word 2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement