65xx – Multiplikation mit 10
Hier eine einfache Multiplikation mit 10. In diesem Schnipsel auf 8 Bit beschränkt:
Der Ausgangswert befindet sich im Register A
1 2 3 4 5 6 7 8 9 10 11 |
MULT10: asl ; mit 2 multiplizieren sta temp ; temporär in TEMP speichern asl ; wieder mit 2 multiplizieren (= *4) asl ; und noch einmal mit 2 multiplizieren (= *8) clc adc temp ; und das Ergebnis aus A + TEMP wieder in A, (A = x*8 + x*2) rts TEMP: .byte 0 |
Diese kleine Stückchen Code berücksichtig keinen Überlauf. Alle Ergebnisse größer 255 werden somit nicht berücksichtigt bzw. erfordern weiteren Code.