BEQ $hhll

Aus C64-Wiki
(Weitergeleitet von BEQ)
Zur Navigation springenZur Suche springen
Mnemonic: BEQ $hhll
Opcode: $F0
Operand(en): $nn
Anzahl der Bytes: 2
Befehlsgruppe: Sprungbefehl
Adressierung: relativ
Beeinflusste Flags im Statusregister:
keine
Taktzyklen: 2
1 Extratakt bei Sprung
1 Extratakt bei Überschreitung einer Page-Grenze
1 PC R Lese Befehl, inkrementiere PC
2 PC R hole Operand, inkrementiere PC
3 PC R lese Opcode des nächsten Befehls;
wird Sprung ausgeführt,
addiere Operand zu PCL
4+ PC R lese Opcode des nächsten Befehls;
korrigiere PCH; hat er sich nicht geändert,
inkrementiere PC
5! PC R lese Opcode des nächsten Befehls,
inkrementiere PC
Anmerkung: Der Opcode-Ladezyklus des nächsten Befehls
ist nur zu Demonstrationszwecken angegeben.
Zur Berechnung der Zyklenzahl nicht verwenden.
Anmerkung: * Das Highbyte des Programmzählers (PCH)
kann zu diesem Zeitpunkt ungültig sein,
z.B. um 256 Bytes zu hoch oder niedrig.
Anmerkung: + Dieser Zyklus wird beim Sprung ausgeführt
Anmerkung: ! Führt der Sprung zu einer anderen Seite,
wird dieser Zyklus ausgeführt


Der Assembler-Befehl BEQ $hhll verzweigt zur Adresse $hhll (neuer Wert des Programmzählers PC), wenn das Ergebnis der letzten Operation gleich $00 ist, was mit Zero-Flag = 1 angezeigt wird.
Es ist bei der relativen Adressierung darauf zu achten, dass sich das Sprungziel innerhalb des gültigen Adressbereiches befindet!

Funktionsprinzip

Bedeutung der Buchstaben im Befehl

BEQ Branch on EQual
Verzweige bei Gleichheit (0)

Beispiel

Vergleiche auch Beispiel bei BNE.

Vergleichbare BASIC-Anweisung

Für BASIC V2:

10 IF ER = 0 GOTO 50  : REM Wenn Ergebnis=0, springe nach 50

Beispielprogramme