Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .data
- numer: .double 9.0
- skladnik: .double 1550.0
- ulamek: .double 0.55
- jedynka: .double 1.0
- mnoznik: .double 5.2
- SUMA: .double 0.0
- T: .space 1040
- TB: .space 840
- .text
- ;r1 zmienna sterujaca petla
- addi r1, r0, #130
- ld f0, skladnik
- ld f2, ulamek
- ld f4, numer
- ld f6, jedynka
- ;w f0 bede przechowywal wartosc dodawana do tablicy
- addd f0, f0, f2
- addd f0, f0, f4
- ;r2 bedzie wskazywal na i-ty element tablicy T
- addi r2, r0, T
- ;petla wypelniajaca tablice T
- petla1:
- sd 0(r2), f0
- addd f0, f0, f6
- addi r2, r2, #8
- subi r1, r1, #1
- bnez r1, petla1
- ;resetuje zmienna sterujaca petla
- addi r1, r0, #105
- ;r2 bedzie wskazywal na i-ty element tablicy T
- addi r2, r0, T
- ;r3 bedzie wskazywal na i-ty element tablicy TB
- addi r3, r0, TB
- ;do f8 laduje mnoznik
- ld f8, mnoznik
- petla2:
- ;T[i+1]
- ld f10, 8(r2)
- ;T[i+2]
- ld f12, 16(r2)
- ;T[i+3]
- ld f14, 24(r2)
- ;T[i+4]
- ld f16, 32(r2)
- ;T[i+5]
- ld f18, 40(r2)
- ;T[i+6]
- ld f20, 48(r2)
- ;T[i]
- ld f22, 0(r2)
- multd f24, f10, f20
- multd f26, f24, f22
- multd f24, f26, f8
- addd f26, f12, f14
- addd f26, f26, f16
- subd f24, f24, f26
- divd f24, f24, f18
- sd 0(r3), f24
- ;w f30 przechowuje sume elementow tablicy
- addd f30, f30, f24
- subi r1, r1, #1
- addi r2, r2, #8
- addi r3, r3, #8
- bnez r1, petla2
- ;w rejestrze r4 umieszczam adres pamieci pod etykieta SUMA
- addi r4, r0, SUMA
- ;w komorce pamieci o adresie r4 umieszczam liczbe double zaczynajaca sie w rejestrze f30
- sd 0(r4), f30
- trap 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement