Buongiorno, sto cercando di svolgere questo programma, è una traccia d'esame, e la parte della somma e differenza funzione...

Solo che volevo inserire anche i comandi per lo stack, ma non mi funziona che caspita sto sbagliando???

Grazie

Il codice: 
#ESAME del 27 Febbraio 2025
#
# Scrivere un programma assembly che legga due numeri interi (positivi, negativi o nulli) da tastiera, 
# e stampi la loro somma e la loro differenza. 
# L’individuazione della somma e della differenza va fatta utilizzando due funzioni 
# (trova_somma, trova_differenza), che ricevono come parametri i due numeri interi e ne ritornano 
# la somma e differenza, rispettivamente senza effettuare nessuna verifica di eventuali overflow. 
# La chiamata delle due funzioni dovrà rispettare le convenzioni per il salvataggio dei registri. 
# Utilizzare le system call RARS (MARS) per l’I/O e la terminazione del main. 
# È obbligatorio utilizzare funzioni con scambio dei parametri per individuare somma e differenza. 
# Facoltativo: inserire il codice per verificare la presenza di overflow (sia nella somma che nella differenza), 
# ed eventualmente segnalarne l’occorrenza.

.global _start
.data
	insert1: 		.asciz "\n Inserisci il primo numero: "
	insert2: 		.asciz "\n Inserisci il secondo numero: "
	print_sum:	.asciz "\n La somma è: "
	print_diff:		.asciz "\n La differenza è: "
.text 
_start:
	addi sp, sp, -16
	la a0, insert1
	li a7, 4
	ecall
	li a7, 5
	ecall
	mv t0, a0
	
	la a0, insert2
	li a7, 4
	ecall
	li a7, 5
	ecall
	mv t1, a0
	
	sw t0, 0(sp)
	sw t1, 4(sp)
	
	jal ra, trova_somma
	jal ra, trova_differenza
	
	sw s2, 8(sp)
	sw s3, 12(sp)
	
	la a0, print_sum
	li a7, 4
	ecall
	mv a0, s2
	li a7, 1
	ecall
	
	la a0, print_diff
	li a7, 4
	ecall
	mv a0, s3
	li a7, 1
	ecall
	
	lw t0, 0(sp)
	lw t1, 4(sp)
	lw s2, 8(sp)
	lw s3, 12(sp)
	addi sp, sp, 16
	
# Fine del Programma
li a7, 10
ecall

# Funzione trova_somma
trova_somma:
#	li s2, 0				# inizializzo la somma
	add s2, t0, t1
	ret
	
# Funzione trova_differenza
trova_differenza:
#	li s3, 0				# inizializzo la somma
	sub s3, t0, t1
	ret