Come da titolo, stavo provando a svolgere questo esercizio; risolto il problema della conversione nelle due modalità, ora mi resta da capire come stampare nell'ordine corretto i due numeri ottenuti nelle due basi...(sul web ho visto che usa srli ed slli...ma saprei se è la modalità corretta)

PS: Per la forma exa devo modificare il numero in lettere quando maggiore di 9...spero di farlo questa sera

Grazie in anticipo a chi mi risponde!

#####################################################################
# Scrivere un programma che, preso un numero decimale da tastiera, 	#
# ne stampi la rappresentazione in base 2 e in base 16.				#
#####################################################################

.globl _start

.data
	in_num:			.asciz "\n Digita il numero da convertire "
	base2:			.asciz "\n Il numero in base binaria --> "
	base16:			.asciz "\n Il numero in base exa --> "
	
#	print_div:		.asciz "\n La divisione "
.text
_start:
	la a0, in_num
	li a7, 4
	ecall
	li a7, 5
	ecall
	mv s0, a0				# s0 è il numero da convertire
	
	li t1, 2				# t1 conversione in base 2
	li t2, 16				# t1 conversione in base 16
	
	mv t0, s0
# Testo stampa resto
	la a0, base2
	li a7, 4
	ecall
# Conversione in binario
loop_binario:
# Testo stampa resto
	rem t3, t0, t1
	mv a0, t3
	li a7, 1
	ecall
# Effettua e stampa la divisione	
	div t0, t0, t1
# Prova di stampa della divisione
	#	la a0, print_div
	#	li a7, 4
	#	ecall
	#	mv a0, t0
	#	li a7, 1
	#	ecall
	bnez t0, loop_binario
	
	mv t4, s0
# Testo stampa resto
	la a0, base16
	li a7, 4
	ecall
# Conversione in exa
loop_exa:
	rem t3, t4, t2
	mv a0, t3
	li a7, 1
	ecall
	mv a0, t3
	div t4, t4, t2
	bnez t4, loop_exa

# Fine del programma
li a7, 10
ecall