;Programmet multiplicerar 5*10 ;och skriver resultatet 100 ;minnescell 65500. ; Valter Pettersson, R|nninge (2008) ; ORG 65408 ;Startadress (=-128) LD A,0 ;Initiera A=0 LD B,5 ;Initiera B=5 ; MERA ADD A,10 ;A=A+10 DJNZ MERA ;Minska B med 1. Till ; MERA om B ej=0. LD (65500),A ;Klart! Skriv resul- ; tat cell 65500. RET ;]ter till BASIC. ; ;Programmet ovan assembleras med ;l{mplig assembler. ;G|r LOAD p} resultatet (BASIC-rad 10) ;och l{gg till BASIC-satserna 20 och 30. ; ;Det slutliga programmet ser allts} ;ut s} h{r: ;10 POKE -128%,62%,0%,6%,5%,198%,10%,16%,252%,50%,220%,255%,201% ;20 Z=CALL(65408) ;30 ; PEEK(65500) ; ;Jag skickar med assembleringslistan ;ocks} f|r den som {r intresserad: ; ABC80-assembler PASS 1 LOC OBJ KOD K[LL KOD FF80 ORG 65408 ;Startadress (=-128) FF803E00 LD A,0 ;Initiera A=0 FF820605 LD B,5 ;Initiera B=0 FF84 ; FF84C60A MERA ADD A,10 ;A=A+10 FF861078 DJNZ MERA ;Minska B med 1. Till FF88 ; MERA om B ej=0. FF8832DCFF LD (65500),A ;Klart! Skriv resul- FF8B ; tat cell 65500. FF8BC9 RET ;]ter till BASIC. ABC80-assembler PASS 2 LOC OBJ KOD K[LL KOD FF80 ORG 65408 ;Startadress (=-128) FF803E00 LD A,0 ;Initiera A=0 FF820605 LD B,5 ;Initiera B=0 FF84 ; FF84C60A MERA ADD A,10 ;A=A+10 FF8610FC DJNZ MERA ;Minska B med 1. Till FF88 ; MERA om B ej=0. FF8832DCFF LD (65500),A ;Klart! Skriv resul- FF8B ; tat cell 65500. FF8BC9 RET ;]ter till BASIC. < Ins{nt av 2008 >