如何在MIPS(MARS)汇编语言中检查矩阵之间相乘的结果是否正确?

时间:2019-04-09 17:07:59

标签: arrays mips

事实是,我必须在MIPS汇编器中编写一个程序,该程序包括给定的2x2矩阵和两个元素的向量彼此相乘。事实是,我认为代码可以工作,但是我不知道我保存的结果是否很好,或者结果是否不好,我也不知道如何证明它。如果有人可以看一下代码并告诉我,将不胜感激。提前非常感谢您。我附上代码:

.text
.globl begin

begin:  
        la $t0, matrix      
        la $t1, matrix_out  
        la $t2, array
        li $t3, 0       
        li $t4, 0       

loop:
        lw $t5, ($t0)
        lw $t6, ($t2)
        mul $t7, $t6,$t5

        add $t0, $t0, 4     
        add $t2, $t2, 4     
        add $t8, $t8, $t7
        sw $t8, ($t1)
        add $t1, $t1, 4 
        add $t3, $t3, 1

        bne $t3, 2, loop
        add $t8, $0, $0 
        add $t2,$t2,-8
        add $t3, $zero, $zero   
        add $t4, $t4, 1     
        bne $t4, 2, loop

        li $v0, 10
        syscall 

 .data  

matrix:     .word 1,2,3,4  
matrix_out: .space 8 
array:      .word 5,6

0 个答案:

没有答案