; ; gr-v9-2010_02.x68 ; ; Napisite funkciju, i pripadajuci program, ; koji 16 bitnu vrijednost iz varijable NUMBER ; s adrese $6000 konvertira ; u cetiri ASCI znaka (broj 4 -> '4'). ; Spremite rezultat na adresu $6002. ; DATA: EQU $6000 PROGRAM: EQU $6100 ORG DATA NUMBER: DS.W 1 STRING: DS.B 4 ORG PROGRAM START: MOVE.L #STRING, -(A7) MOVE.W NUMBER, -(A7) JSR BINHEX MOVE.B #9,D0 TRAP #15 ; halt simulator BINHEX: MOVEM.L D0-D2/A0, -(A7) MOVEQ #3, D1 MOVE.W 16+4(A7), D2 MOVEA.L 16+6(A7), A0 ADDA.L #4, A0 LOOP: MOVE.B D2, D0 ANDI.B #$0F, D0 JSR HEXDIGIT MOVE.B D0, -(A0) LSR.W #4, D2 DBRA D1, LOOP MOVEM.L (A7)+, D0-D2/A0 MOVE.L (A7), 6(A7) ADDA.L #6, A7 RTS HEXDIGIT: CMP.B #$0A, D0 BLT.S ADDZ ADD.B #'A'-'0'-$0A, D0 ADDZ ADD.B #'0', D0 RTS END START