Vhod/izhod
Completion requirements
Vhodno/izhodne naprave so v SIC/XE oštevilčene z 0–255, pri čemer naprave 0, 1 in 2 predstavljajo standardni vhod, izhod in napako (angl. stdin, stdout in stderr). Ostale naprave simulator predstavi z datoteko XX.dev
, kjer je XX
šestnajstiški zapis številke naprave.
- Napišite program
print.asm
, ki na napravo z oznakoAA
zapiše nizSIC/XE
in znak za skok v novo vrstico. Sledite programu v simulatorju. V programu spremenite oznako naprave in ga ponovno zaženite. Katere nove datoteke so nastale? Kaj je v njih? - Napišite program
cat.asm
, ki kopira znake s standardnega vhoda na standardni izhod.
Rutine
Napišite program echo.asm
za izpis besedila na standardni izhod. Program naj bo sestavljen iz rutin in glavnega dela, ki jih testira. Pazite, da rutine ne popackajo registrov. Napišite naslednje rutine:
char
- izpis znaka, podanega v registruA
.nl
- izpis znaka za skok v novo vrstico.string
- izpis niza, ki se nahaja na naslovu, podanem v registruA
. Podprite C-jevske nize, t.j. nizi se končajo z znakom s kodo 0. Namig: potrebovali boste posredno naslavljanje.num
- desetiški izpis števila, podanega v registruA
. Ta rutina je malce bolj zapletena, zato je pametno malce vnaprej razmisliti. Kako pridemo do števk števila? V kakšnem vrstnem redu jih dobimo?
Last modified: Tuesday, 14 December 2021, 1:30 PM