Prva domača naloga
Vse spodaj naštete programe napišite v zbirniku SIC/XE in dodajte v svojo shrambo git. Shramba naj bo dostopna na naslovu spox.fri.uni-lj.si:~ab1234/spo
. Rešitve za prvo (tj. to) domačo nalogo shranite v imenik ass1
. Oddane rešitve boste predstavili asistentu na vajah. Pričakovano je, da med zagovorom znate
- pokazati zgodovino sprememb,
- ustvariti novo kopijo (
clone
) shrambe na lokalnem računalniku, - razložiti delovanje vaših programov in
- prikazati delovanje programov v simulatorju.
(2) Vaje
Dokončajte naslednje programe, ki smo jih pisali na vajah: arith
, arithr
, poly
, horner
, print
, cat
, echo
, stack
in screen
. Rešitve dodajte v svojo shrambo git.
(2) Rekurzija
V zbirniku SIC/XE napišite program rec.asm
, ki bere števila z naprave FA
. Za vsako število naj izračuna fakulteto ali Fibonaccijevo število (ali katero drugo rekurzivno funkcijo) in rezultat izpiše na standardni izhod. Program se naj konča, ko prebere število 0.
Vhodna datoteka je v zapisu ASCII, pri čemer je vsako število v svoji vrstici. Števila 1 9 42
torej predstavlja zaporedje bajtov 0x310a390a34320a
. V istem formatu zapišite rezultate na standardni izhod, lahko pa namesto tega za izpis uporabite tekstovni zaslon.
Za računanje funkcije uporabite rekurzivno rutino, torej tako, ki »kliče« (z JSUB
) samo sebe.
(2) Bonus
V zbirniku SIC/XE implementirajte svoj program, ki naredi kaj uporabnega in/ali zabavnega. Pred oddajo svojo idejo preverite pri asistentu.