Problem mit 16bit Zähler

Gast #67465
Hallo!

Wolte folgenden Code mit dem Simulator testen und leider tut er nicht
das was ich will. Eigentlich sollte es ein 16bit Zähler sein, der
adresseh nur dann um eins erhöht, wenn in adressel einen Überlauf
stattgefunden hat. Leider macht er das nicht so. Ist die anweisung brcc
falsch? Oder funktioniert der SIulator mal wieder nicht so wie ich
will? Hier noch der Codeschnipsel:

inc adressel      ;Adresse um eins erhöhen
brcc kein_ueberlauf
inc adresseh
kein_ueberlauf:
Gast
Hi,
der INC Befehl setzt das Carry Flag nicht bei Überlauf, nimm den Branch
Befehl BREQ, das Z Flag wird nämlich gesetzt wenn INC 0 ergeben hat.

Gruß

Thomas
Gast
Hallo!  Habs versucht, und man muss einfach brne anstatt breq nehmen,
dann so funktioniert es. Danke, du hast mich auf den richtigen Dampfer
gebracht!!

Gruss

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.