1 |
5 |
mcafruni |
1 0000 21040000 addi $a0, $t0, 0
|
2 |
|
|
2 0004 21050018 addi $a1, $t0, 24
|
3 |
|
|
3 0008 21060000 addi $a2, $t0, 0
|
4 |
|
|
4 000C 21070006 addi $a3, $t0, 6 ; número máximo de iterações do for3
|
5 |
|
|
5 for2:
|
6 |
|
|
6 0010 23290000 addi $t1, $t9, 0
|
7 |
|
|
7 0014 210F0000 addi $t7, $t0, 0
|
8 |
|
|
8 for1:
|
9 |
|
|
9 0018 8D2A0144 lw $t2, 324($t1) ; $t2 = MB posição 0 (MB)
|
10 |
|
|
10 001C 8D6C00B4 lw $t4, 180($t3) ; $t4 = MA posição 0 (MA)
|
11 |
|
|
11 0020 21290018 addi $t1, $t1, 24 ; incrementa 12 em $t1, próximo nr. da coluna
|
12 |
|
|
12 0024 216B0004 addi $t3, $t3, 4 ; incrementa 1 em $t3, próximo nr. da linha
|
13 |
|
|
13 0028 014C0018 mult $t2, $t4 ; (LO,HI) = $t2 * $t4
|
14 |
|
|
14 002C 00007012 mflo $t6
|
15 |
|
|
15 0030 01EE7820 add $t7, $t7, $t6 ; acumula valores em $t7
|
16 |
|
|
16 0034 1565FFF9 bne $t3, $a1, for1 ; nr. para ser salvo obtido quando $t3=$a1
|
17 |
|
|
17 0038 AF0F0400 sw $t7, 1024($t8) ; salva na posição contida em $t8
|
18 |
|
|
18 003C 23390004 addi $t9, $t9, 4 ; controle de MB[0,0]
|
19 |
|
|
19 0040 20CB0000 addi $t3, $a2, 0 ; controle de linhas da MA
|
20 |
|
|
20 0044 23180004 addi $t8, $t8, 4 ; incrementa para próxima posição p/salvar
|
21 |
|
|
21 0048 1705FFF2 bne $t8, $a1, for2 ; 6 posições da matrix C foram gravados
|
22 |
|
|
22 004C 20C60018 addi $a2, $a2, 24 ; endereço para próxima linha
|
23 |
|
|
23 0050 20A50018 addi $a1, $a1, 24 ; incrementa em 12 para iniciar na próxima linha
|
24 |
|
|
24 0054 20CB0000 addi $t3, $a2, 0 ; para ser multiplicada por todas colunas colocado em $t3
|
25 |
|
|
25 0058 20840001 addi $a0, $a0, 1 ; controle de iterações do for3
|
26 |
|
|
26 005C 21090000 addi $t1, $t0, 0 ; volta para MB[0,0]
|
27 |
|
|
27 0060 21190000 addi $t9, $t0, 0
|
28 |
|
|
28 0064 210F0000 addi $t7, $t0, 0
|
29 |
|
|
29 0068 1487FFEC bne $a0, $a3, for1 ; $a0=$a3 finalmente o fim!
|
30 |
|
|
30 006C 00000000 nop
|
31 |
|
|
31 org 180
|
32 |
|
|
32 00B4 00000001 dcw 1
|
33 |
|
|
33 00B8 FFFFFFFE dcw -2
|
34 |
|
|
34 00BC 00000003 dcw 3
|
35 |
|
|
35 00C0 FFFFFFFF dcw -1
|
36 |
|
|
36 00C4 00000004 dcw 4
|
37 |
|
|
37 00C8 FFFFFFFE dcw -2
|
38 |
|
|
38 00CC FFFFFFFC dcw -4
|
39 |
|
|
39 00D0 FFFFFFFB dcw -5
|
40 |
|
|
40 00D4 FFFFFFFC dcw -4
|
41 |
|
|
41 00D8 FFFFFFFF dcw -1
|
42 |
|
|
42 00DC FFFFFFFE dcw -2
|
43 |
|
|
43 00E0 00000000 dcw 0
|
44 |
|
|
44 00E4 FFFFFFFF dcw -1
|
45 |
|
|
45 00E8 00000004 dcw 4
|
46 |
|
|
46 00EC FFFFFFFB dcw -5
|
47 |
|
|
47 00F0 00000003 dcw 3
|
48 |
|
|
48 00F4 FFFFFFFC dcw -4
|
49 |
|
|
49 00F8 FFFFFFFD dcw -3
|
50 |
|
|
50 00FC 00000001 dcw 1
|
51 |
|
|
51 0100 FFFFFFFF dcw -1
|
52 |
|
|
52 0104 FFFFFFFF dcw -1
|
53 |
|
|
53 0108 FFFFFFFE dcw -2
|
54 |
|
|
54 010C FFFFFFFB dcw -5
|
55 |
|
|
55 0110 00000000 dcw 0
|
56 |
|
|
56 0114 00000001 dcw 1
|
57 |
|
|
57 0118 00000002 dcw 2
|
58 |
|
|
58 011C FFFFFFFF dcw -1
|
59 |
|
|
59 0120 00000002 dcw 2
|
60 |
|
|
60 0124 00000004 dcw 4
|
61 |
|
|
61 0128 00000004 dcw 4
|
62 |
|
|
62 012C FFFFFFFB dcw -5
|
63 |
|
|
63 0130 FFFFFFFB dcw -5
|
64 |
|
|
64 0134 00000003 dcw 3
|
65 |
|
|
65 0138 FFFFFFFE dcw -2
|
66 |
|
|
66 013C FFFFFFFD dcw -3
|
67 |
|
|
67 0140 FFFFFFFB dcw -5
|
68 |
|
|
68 0144 FFFFFFFE dcw -2
|
69 |
|
|
69 0148 00000001 dcw 1
|
70 |
|
|
70 014C FFFFFFFF dcw -1
|
71 |
|
|
71 0150 FFFFFFFD dcw -3
|
72 |
|
|
72 0154 FFFFFFFB dcw -5
|
73 |
|
|
73 0158 FFFFFFFB dcw -5
|
74 |
|
|
74 015C 00000000 dcw 0
|
75 |
|
|
75 0160 FFFFFFFF dcw -1
|
76 |
|
|
76 0164 FFFFFFFC dcw -4
|
77 |
|
|
77 0168 FFFFFFFB dcw -5
|
78 |
|
|
78 016C FFFFFFFB dcw -5
|
79 |
|
|
79 0170 00000003 dcw 3
|
80 |
|
|
80 0174 FFFFFFFD dcw -3
|
81 |
|
|
81 0178 00000003 dcw 3
|
82 |
|
|
82 017C FFFFFFFE dcw -2
|
83 |
|
|
83 0180 00000000 dcw 0
|
84 |
|
|
84 0184 FFFFFFFB dcw -5
|
85 |
|
|
85 0188 FFFFFFFE dcw -2
|
86 |
|
|
86 018C FFFFFFFB dcw -5
|
87 |
|
|
87 0190 00000003 dcw 3
|
88 |
|
|
88 0194 FFFFFFFC dcw -4
|
89 |
|
|
89 0198 FFFFFFFF dcw -1
|
90 |
|
|
90 019C FFFFFFFD dcw -3
|
91 |
|
|
91 01A0 FFFFFFFB dcw -5
|
92 |
|
|
92 01A4 FFFFFFFB dcw -5
|
93 |
|
|
93 01A8 00000000 dcw 0
|
94 |
|
|
94 01AC FFFFFFFF dcw -1
|
95 |
|
|
95 01B0 FFFFFFFC dcw -4
|
96 |
|
|
96 01B4 FFFFFFFB dcw -5
|
97 |
|
|
97 01B8 FFFFFFFD dcw -3
|
98 |
|
|
98 01BC 00000003 dcw 3
|
99 |
|
|
99 01C0 FFFFFFFE dcw -2
|
100 |
|
|
100 01C4 00000000 dcw 0
|
101 |
|
|
101 01C8 FFFFFFFB dcw -5
|
102 |
|
|
102 01CC FFFFFFFE dcw -2
|
103 |
|
|
103 01D0 FFFFFFFB dcw -5
|
104 |
|
|
104
|
105 |
|
|
Table des étiquettes :
|
106 |
|
|
for1 0018
|
107 |
|
|
for2 0010
|