Ich habe versucht, in Assembler eine Division von zwei 8-bit Zahlen zu berechnen, allerdings funktioniert das Programm bei einigen Zahlenwerten nicht (z.B. bei 130 / 2, bei 129 / 2 jedoch einwandfrei):
1 | div:
|
2 | mov r18,r16 |
3 | clr r16 |
4 | divD: |
5 | sub r18,r17 |
6 | brmi end |
7 | inc r16 |
8 | rjmp divD |
9 | end: |
10 | ret
|
Mein Verdacht ist, dass der
1 | inc |
Befehl das *N*-Flag beeinflusst, aber mir kommt nicht in den Sinn, wie und wann das passieren sollte?