|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jul 2006
Messaggi: 2
|
[MIPS] Matrici ed inserimento input dati
Buongiorno a tutti. Ho un problema con un progetto MIPS che mi sta un pò incasinando la vita.
Devo creare due matrici, inserendo gli elementi e le loro dimensioni (devono essere entrambe quadrate e uguali), calcolarne il prodotto scalare e mettere il risultati in una terza matrice. Per il calcolo del prodotto scalare credo di avercela fatta. L'unica cosa che mi blocca è l'inserimento dei valori in input. Ok, uso read_int e syscall sia per gli elementi che per il lato-matrice. Ma come devo organizzarmi con i registri? Vi allego il codice su cui sto lavorando, per provare a vedere se funzionava ho messo delle matrici già pre-impostate: So che dovrei mettere .space e, sapendo che dovrei avere una matrice NxN con un massimo di 10 caselle per lato, dovrei mettere .space 400, giusto? Grazie per l'aiuto Codice:
.data v1: .word 1,2,3,4 .word 5,6,7,8 .word 9,10,11,12 v2: .word 10,20,30,40 .word 10,10,10,10 .word 10,10,10,10 v3: .word 0:12 c: .word 4 space: .asciiz "\n" str00: .asciiz ":::::Programma che calcola e stampa il prodotto scalare di due matrici::::: \n" .text main: li $v0, 4 la $a0, str00 syscall li $t0, 0 li $t2, 12 la $t9, c li $t8, 0 ciclo: lw $t3, v1($t0) lw $t4, v2($t0) mul $t3, $t3, $t4 addi $t2, $t2, -1 li $v0, 1 move $a0, $t3 syscall li $v0, 4 la $a0, space syscall sw $t3, v3($t0) addi $t0, $t0, 4 addi $t8, $t8, 1 bne $t2, $zero, ciclo li $v0, 10 syscall |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:20.



















