csrcipseudo

csrci

pseudo
Assembly RISC-V Riferimento

lyszt.net tratta csrci e altre istruzioni RISC-V in modo più dettagliato.

Descrizione

csrci cancella bit in un registro di controllo a partire da una costante. Un registro di controllo e stato, o CSR, contiene lo stato del processore come l'indirizzo del gestore delle trap e gli interruttori degli interrupt (vedi csrrw). La costante uimm è un numero da 0 a 31 perché è memorizzata in 5 bit. La forma seguente cancella ogni bit del CSR che è 1 in uimm e lascia invariati gli altri bit.

csrci csr, uimm

È una pseudoistruzione, un nome leggibile che l'assembler riscrive in un'istruzione reale. Diventa l'istruzione seguente, dove rd è zero così il vecchio valore viene scartato.

csrrci zero, csr, uimm

La riga seguente disattiva l'abilitazione globale degli interrupt. L'8 è 1000 in binario, quindi cancella il bit 3 di mstatus.

csrci mstatus, 8

Vedi csrsi per impostare i bit.

Si espande in

csrrci zero, csr, uimm

L'assembler sostituisce questa pseudoistruzione con la o le istruzioni reali elencate sopra.

Esempio

csrci mstatus, 8   # clears bit 3 of mstatus