Как я могу на языке ассемблера MIPS (MARS) проверить правильность результата умножения между матрицами? - PullRequest
0 голосов
/ 09 апреля 2019

Дело в том, что мне пришлось делать программу на ассемблере 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...