csrciпсевдо

csrci

псевдо
Асемблер RISC-V Посилання

lyszt.net охоплює csrci та інші інструкції RISC-V більш детально.

Опис

csrci скидає біти в регістрі керування за константою. Регістр керування та стану, або CSR, зберігає стан процесора, як-от адресу обробника пасток і перемикачі переривань (див. csrrw). Константа uimm — це число від 0 до 31, оскільки вона зберігається в 5 бітах. Наведена нижче форма скидає кожен біт CSR, який дорівнює 1 в uimm, і залишає інші біти без змін.

csrci csr, uimm

Це псевдоінструкція — читабельна назва, яку асемблер переписує в справжню інструкцію. Вона стає наведеною нижче інструкцією, де rd — це zero, тому старе значення відкидається.

csrrci zero, csr, uimm

Наведений нижче рядок вимикає глобальний дозвіл переривань. 8 — це двійкове 1000, тому він скидає біт 3 регістра mstatus.

csrci mstatus, 8

Про встановлення бітів див. csrsi.

Розгортається до

csrrci zero, csr, uimm

Асемблер замінює цю псевдоінструкцію реальною інструкцією або інструкціями, переліченими вище.

Приклад

csrci mstatus, 8   # clears bit 3 of mstatus