# Deklaracija podataka .data matrica: .word 11, 12, 13, 14, 15 .word 16, 17, 18, 19, 20 .word 21, 22, 23, 24, 25 .word 26, 27, 28, 29, 30 .word 31, 32, 33, 34, 35 dimenzija: .word 5 suma: .word 0 poruka: .asciiz "Suma elemenata na dijagonali= " # Text/kod zadatka .text .globl main main: # Poziv procedure za sumiranje la $a0, matrica # pocetna adresa lw $a1, dimenzija # dimenzija jal sumiranje sw $v0, suma # Prikazivanje rezultata li $v0, 4 # print string la $a0, poruka syscall li $v0, 1 # print integer lw $a0, suma syscall # Kraj programa li $v0, 10 # terminate syscall # system call .end main # Elementi na dijagonali imaju istu brojnu oznaku vrste i kolone sumiranje: li $v0, 0 # suma=0 li $t1, 0 # indeks i=0 Loop: mul $t3, $t1, $a1 # racunanje adrese add $t3, $t3, $t1 mul $t3, $t3, 4 add $t4, $a0, $t3 lw $t5, ($t4) add $v0, $v0, $t5 add $t1, $t1, 1 # i=i+1 blt $t1, $a1, Loop jr $ra