csrci
Pseudoelementlyszt.net behandelt csrci und andere RISC-V-Befehle ausführlicher.
Beschreibung
csrci löscht Bits in einem Steuerregister anhand einer Konstante. Ein Steuer- und Statusregister, oder CSR, enthält den Prozessorzustand wie die Trap-Handler-Adresse und die Interrupt-Schalter (siehe csrrw). Die Konstante uimm ist eine Zahl von 0 bis 31, weil sie in 5 Bits gespeichert wird. Die folgende Form löscht jedes Bit des CSR, das in uimm 1 ist, und lässt die anderen Bits unverändert.
csrci csr, uimm
Es ist eine Pseudoinstruktion, ein lesbarer Name, den der Assembler in eine echte Instruktion umschreibt. Sie wird zur untenstehenden Instruktion, wobei rd zero ist, sodass der alte Wert verworfen wird.
csrrci zero, csr, uimm
Die folgende Zeile schaltet die globale Interrupt-Freigabe aus. Die 8 ist binär 1000, also löscht sie Bit 3 von mstatus.
csrci mstatus, 8
Siehe csrsi zum Setzen von Bits.
Wird erweitert zu
csrrci zero, csr, uimm
Der Assembler ersetzt diese Pseudoanweisung durch die oben aufgeführte(n) echte(n) Anweisung(en).
Beispiel
csrci mstatus, 8 # clears bit 3 of mstatus
