MASchmidt

5 - Zahl als Byte dezimal ausgeben (ohne führende '0')

Dec 13th, 2017
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. JMP start
  2. zahl:
  3. DB 23 ;Zahl als Byte
  4. DB 0
  5. start:
  6. MOV A,[zahl] ;Zahl(Byte) nach A kopieren
  7. MOV D,234 ;Output auf "Einer" setzen
  8. .loop:
  9. MOV C,A ;A nach C kopieren
  10. DIV 10 ;A durch 10 teilen
  11. JZ ende
  12. MOV B,A ;Ergebnis nach B kopieren
  13. MUL 10 ;A x 10
  14. SUB C,A ;A von C subtrahieren
  15. ADD C,48 ;C + 48 für die ASCII Ziffer
  16. MOV [D],C ;Ziffer ausgeben
  17. DEC D ;Output Adresse um 1 senken für die nächste Ziffer
  18. MOV A,B ;B wieder nach A kopieren
  19. JNZ .loop
  20.  
  21. ende:
  22. MOV B,A ;Ergebnis nach B kopieren
  23. MUL 10 ;A x 10
  24. SUB C,A ;A von C subtrahieren
  25. ADD C,48 ;C + 48 für die ASCII Ziffer
  26. MOV [D],C ;Ziffer ausgeben
  27. HLT ;Programm stoppen
Advertisement
Add Comment
Please, Sign In to add comment