Hallo malthy,
Zitat Zitat von malthy Beitrag anzeigen
Bei Verwendung von ADC muss der abzuziehende Wert ja per Register übergeben werden, erfordert also einen zusätzlichen Befehl.
"abzuziehende" ? Aber ansonsten, ja, so ist es.
Gibt es einen "add immediate with carry", sodass ich die 0 direkt übergeben kann?
Nein, gibt's nicht, da musst Du ein Hilfsregister für ADC nehmen. Was aber nicht weiter tragisch ist, denn braucht man mehrmals eine 0, dann reserviert man sich ein Register extra dafür. In C ist das von Haus aus z.B. R1.
Ich habe nur einen SBCI (Subtract Immediate with Carry) gefunden...
Das hilft Dir nix, da das Carry dabei subtrahiert würde.
Du kannst den Bascom Simulator für Testcode benutzen, lass Dir das Register-Fenster anzeigen und wähle in den Tabs links oben "uP" aus, da siehst Du das SREG und dort die einzelnen Flags.