csrwi
Pseudoelementlyszt.net behandelt csrwi und andere RISC-V-Befehle ausführlicher.
Beschreibung
csrwi schreibt eine Konstante in ein Steuerregister. 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, da sie in 5 Bits gespeichert wird. Die folgende Form schreibt sie in das CSR und verwirft den alten Wert.
csrwi 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 nicht gelesen wird.
csrrwi zero, csr, uimm
Die folgende Zeile schreibt 0 in mie, was alle Interrupt-Quellen ausschaltet.
csrwi mie, 0
Ein Wert über 31 passt nicht, daher wird ein größerer Wert zuerst in ein Register geschrieben und mit csrw geschrieben.
Wird erweitert zu
csrrwi zero, csr, uimm
Der Assembler ersetzt diese Pseudoanweisung durch die oben aufgeführte(n) echte(n) Anweisung(en).
Beispiel
csrwi mie, 0 # mie = 0
