header.self8051
Suche   ||   HOME   ||   Eigenschaften   ||   Befehlsreferenz   ||   Derivate   ||  
 Eigenschaften
 Befehlsreferenz
     Einführung
    > alle Befehle
        ACALL
        ADD
        ADDC
        AJMP
        ANL
        ANL  C
        CJNE
        CLR
        CLR  A
        CPL
        CPL  A
        DA  A
        DEC
        DIV  AB
        DJNZ
        INC
        INC  DPTR
        JB
       > JBC
        JC
        JMP
        JNB
        JNC
        JNZ
        JZ
        LCALL
        LJMP
        MOV
        MOV  C
        MOV  DPTR
        MOVC
        MOVX
        MUL  AB
        NOP
        ORL
        ORL  C
        POP
        PUSH
        RET
        RETI
        RL  A
        RLC  A
        RR  A
        RRC  A
        SETB
        SJMP
        SUBB
        SWAP  A
        XCH
        XCHD
        XRL
 Derivate
 interessante Links
Sie sind hier: SELF8051 || Befehlsreferenz || alle Befehle || JBC

JBC     <bit>,<rel>


Funktion


Springe, wenn direktes Bit <bit> gesetzt ist und lösche das Bit.

 

Beschreibung


Wenn das betreffende Bit gesetzt ist (bit =1), springt das Programm zur angegebenen Stelle. Ansonsten fährt es mit dem auf JBC folgenden Befehl fort.

In jedem Fall wird das abgefragte Bit nach der Abfrage gelöscht (bit =0).

Relatives Sprungziel rel
Der Programmzähler wird zunächst auf den nächsten Befehl gesetzt. Ist das bit  gleich Eins, wird der Sprungwert rel  zum Programmzähler hinzuaddiert (PC=PC+rel), welches den relativen Sprung zur Folge hat.
Der Sprungwert rel  wird dabei als vorzeichenbehaftete Zahl interpretiert. So sind Sprünge von -128 Bytes (zurück) bzw. 127 Bytes (vor) möglich.

Kennzeichnungsbits werden nicht verändert.

Zur Beachtung:
Dient dieser Befehl zur Änderung des Wertes eines Ausgangsports, so wird der zu verarbeitende Portwert vom Ausgangs-Zwischenspeicher und nicht von den Eingangsanschlüssen direkt gelesen.

 

Beispiel


Der Akkumulator 56H (01010110B). Die Befehlsfolge

JBC     ACC.3,MARKE1
JBC     ACC.2,MARKE2

bewirkt einen Sprung zu MARKE2, wo das Programm fortgesetzt wird. Der Akkumulator ist auf den Wert 52H (01010010B) gesetzt worden.

 

Bytes:      3
Zyklen:    2

 

Befehlscodierung

 0   0   0   1   0   0   0   0 
    
     Bitadresse     
   
  relative Adresse  


Fehler auf dieser Seite melden



 

Seite drucken

Send a Friend

 
 zum Seitenanfang   © Autor Dipl. Ing. Sven Pohl || Impressum || Datenschutz


Tipp: rechtssichere Patientenverfügung einfach online erstellen für nur 14,90 €

  

 

Wertschätzen Sie den Aufwand und den Inhalt mit einer kleinen Spende. Danke.

Sie bestimmen die Höhe, jeder noch so kleine Betrag hilft.

 

   
HASM - Skyscrapper 2