SPO_JakaFurlan/ass1/polySubrutine.asm
2025-10-22 15:56:33 +02:00

64 lines
1.2 KiB
NASM

poly START 0
start LDA x
STA arg1
JSUB startSubrutine
LDA subRez
STA rez
halt J halt
END start
.subrutina za izračun tega polinoma v točki arg1
startSubrutine STA regA
STB regB
STT regT
STS regS .shranimo registre
LDA x0 .pristejemo x0 v A
LDX #3 .odmik v arrayu
LDS arg1
loop LDT x0, X .preberemo x_n
MULR S, T .izračunamo x_n * x^n
ADDR T, A .pristejemo v vsoto
LDT arg1
MULR T, S .zmožimo naslednjo potenco
LDT #3
ADDR T, X .povečamo odmik
LDT #13
COMPR T, X
JGT loop
STA subRez .shranimo rez
LDA regA .obnovimo registre
LDB regB
LDT regT
LDS regS
RSUB
.polinom
x0 WORD 5
WORD 4
WORD 3
WORD 2
WORD 1
.tocka
x WORD 2
.rezultat
rez RESW 1
.parameter subrutine
arg1 RESW 1
.rezultat subrutine
subRez RESW 1
.registri
regA RESW 1
regB RESW 1
regT RESW 1
regS RESW 1