Stampare il valore di un registro

di il
1 risposte

Stampare il valore di un registro

Ragazzi sto iniziando ad usare l'assembly ma non riesco a stampare il valore di un registro, vi posto il codice :

[PHP]
.data

A: .half 4
B: .half 6
C: .half 12
STRING1: .asciiz "Il risultato prima della funzione e'"
STRING2: .asciiz "Il risultato dopo la funzione e'"


.text
.globl main


main:

lw $s0, A
lw $s1, B
lw $s2, C
add $t0, $s0, $s1
sub $t0, $t0, $s2

li $v0, 4
la $a0, STRING1
syscall

add $a0, A
add $a1, B
add $a2, C
jal Procedura



Procedura:
addi $sp, $sp -16
sw $s0, 12($sp)
sw $s1, 8($sp)
sw $s2, 4($sp)
sw $t0, 0($sp)

add $t0, $s0, $s1
sub $t0, $t0, $s2

add $v0, $t0, $zero

lw $t0, 0($sp)
lw $s2, 4($sp)
lw $s1, 8($sp)
lw $s0, 12($sp)

addi $sp, $sp 16

jr $ra



li $v0, 10
syscall
[/PHP]

Il problema si presenta già nel main, in pratica devo stampare il valore di $t0, come diavolo si fa'?

1 Risposte

  • Re: Stampare il valore di un registro

    Io stamperei cosi, se il contenuto di $t0 è un intero
    move $a0, $t0 # metto in $a0 l'intero da stampare
    li $v0, 1 # $v0 codice della print_int
    syscall # stampa

    ciao
Devi accedere o registrarti per scrivere nel forum
1 risposte