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 || RETI

RETI


Funktion


Rücksprung vom Interrupt.

 

Beschreibung


RETI  holt das höher- und niederwertige Byte des Programmzählers nacheinander aus dem Stack und dekrementiert den Stack Pointer zweimal. Die Programmausführung wird an der sich ergebenden Adresse fortgesetzt. Die Interrupt-Logik wird regeneriert, so dass diese weitere Interrupts mit der selben Priotität, wie bei dem gerade abgearbeiteten Interrupt, entgegennehmen kann.

Kennzeichnungsbits werden nicht beeinflußt.

Das Programmstatuswort enthält nicht automatisch den Zustand vor dem Interrupt. Das Programm wird an der sich ergebenden Stelle fortgesetzt. Es ist der Befehl, der unmittelbar auf die Programmstelle folgt, an der die Interrupt-Anforderung erkannt wurde. Falls bei der Abarbeitung von RETI bereits eine Interrupt-Anforderung niedriegerer oder gleicher Priorität vorliegt, wird jener eine Befehl erst ausgeführt, bevor die Abarbeitung des anstehenden Interrupts beginnt.

 

Beispiel


Der Stack Pointer enthalte den Wert 0BH. Eine Interrupt-Anforderung wurde während des Befehls entdeckt, der am Speicherplatz 0122H endet. Die Speicherplätze 0AH und 0BH des internen RAM enthalten die Werte 23H bzw. 01H. Der Befehl

RETI

ergibt 09H im Stack Pointer. Das Programm wird am Speicherplatz 0123H fortgesetzt.

 

 

Bytes:      1
Zyklen:    2

Befehlscodierung

 0   0   1   1   0   0   1   0 

 

 


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 1