csrsipseudo

csrsi

pseudo
Assembly RISC-V Riferimento

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

Descrizione

csrsi imposta i 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 di interrupt (vedi csrrw). La costante uimm è un numero da 0 a 31 perché è memorizzata in 5 bit. La forma seguente imposta ogni bit del CSR che è 1 in uimm e lascia invariati gli altri bit.

csrsi csr, uimm

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

csrrsi zero, csr, uimm

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

csrsi mstatus, 8

Solo i bit da 0 a 4 possono essere impostati in questo modo, quindi il bit 11 di mie necessita di csrs con un registro. Vedi csrci per cancellare i bit.

Si espande in

csrrsi zero, csr, uimm

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

Esempio

csrsi mstatus, 8   # sets bit 3 of mstatus