csrwi
псевдоlyszt.net охоплює csrwi та інші інструкції RISC-V більш детально.
Опис
csrwi записує константу в керуючий регістр. Керуючий регістр стану, або CSR, зберігає стан процесора, як-от адресу обробника пасток і перемикачі переривань (див. csrrw). Константа uimm — це число від 0 до 31, оскільки вона зберігається в 5 бітах. Наведена нижче форма записує її в CSR і відкидає старе значення.
csrwi csr, uimm
Це псевдоінструкція — читабельна назва, яку асемблер переписує в справжню інструкцію. Вона стає наведеною нижче інструкцією, де rd — це zero, тому старе значення не читається.
csrrwi zero, csr, uimm
Наведений нижче рядок записує 0 у mie, що вимикає всі джерела переривань.
csrwi mie, 0
Значення, більше за 31, не вміщується, тому більше значення спершу поміщається в регістр і записується за допомогою csrw.
Розгортається до
csrrwi zero, csr, uimm
Асемблер замінює цю псевдоінструкцію реальною інструкцією або інструкціями, переліченими вище.
Приклад
csrwi mie, 0 # mie = 0
