1 REM Ins{nd av: David Andersson <5201> 1986-08-15 03.10.00 (WRITE) Kurs-inl{gg Z80HANDA.DA1 Hand-assemblera 1 Om man alltid litar till en assemblator och aldrig har har hand-assemblerat s} kan man nog inte f|rst} hur datorn fungerar, egentligen. Man kan ju |va sig med att hand-assemblera ett program. F|ljande |vningsexempel {r en bra b|rjan, m|jligtvis lite f|r enkel: START EQU xxxxx ;ledigt minne i datorn ORG START ;d{r b|rjar v}rt program RET ;v}rt program, bara en instruktion! END ;slut p} filen V{rdet p} xxxxx borde kunna vara 49152 p} ABC800 och 65408 p} ABC80. Den f|rsta raden g|r att assemblern (du) vet vad labeln START ska ha f|r v{rde. Den andra raden (ORG START) g|r att assembler vet p} vilken adress efterf|ljande program ska ligga. I detta fall blir det adress xxxxx. Den 4:e raden (END) talar om att filen {r slut s} att assemblern (du) inte f|rs|ker l{sa f|rbi filslut (som ger ERR 34). Den enda instruktion i detta program som s} att s{ga blir n}nting {r RET. Och den betyder RETURN. Om brogrammet anropas som en subrutin med CALL s} g|r den ingenting, den g|r bara RETURN. N{r du laddat detta program ska allts} maskininstruktionen RET (som {r en byte stor) ligga p} adressen xxxxx. L{mpligen laddas programmet p} en ABC-maskin med kommandot: POKE xxxxx,instruktionskod Sedan testk|r man programmet med kommandot Z=CALL(xxxxx) Om inget h{nder s} fungerar programmet. Blir det reset eller n}t annat lustigt s} f}r man f|rs|ka igen. .