csrrci
يغطي lyszt.net csrrci وتعليمات RISC-V الأخرى بمزيد من التفصيل.
الوصف
csrrci هو csrrc مع قناع ثابت بدلاً من سجل. يرمز الحرف i إلى immediate، وهو ثابت يُكتب في التعليمة. الثابت uimm هو رقم من 0 إلى 31 لأنه مخزّن في 5 بتات. تُوضع القيمة القديمة لـ CSR في rd، ثم تُصفَّر كل بتة تساوي 1 في uimm إلى 0 في CSR.
csrrci rd, csr, uimm
السطر أدناه يمسح البتة 3 من mstatus، مما يطفئ تمكين المقاطعة العام، ويترك القيمة السابقة في t1. الرقم 8 هو 1000 بالنظام الثنائي.
csrrci t1, mstatus, 8
يمكن مسح البتات من 0 إلى 4 فقط بهذه الطريقة. عندما يكون uimm يساوي 0، يُقرأ CSR ولا يُكتب. عندما يكون rd هو zero، تُهمَل القيمة القديمة، وهذا هو اختصار csrci. راجع csrrc للصيغة السجلية.
مثال
csrrci t1, mstatus, 8 # clears bit 3 of mstatus, t1 = old mstatus
