csrc
زائفيغطي lyszt.net csrc وتعليمات RISC-V الأخرى بمزيد من التفصيل.
الوصف
csrc يمسح البتات في سجل التحكم. يحتفظ سجل التحكم والحالة، أو CSR، بحالة المعالج مثل عنوان معالج الفخاخ ومفاتيح المقاطعة (انظر csrrw). الصيغة أدناه تمسح كل بت في CSR يساوي 1 في rs وتترك البتات الأخرى دون تغيير.
csrc csr, rs
إنها تعليمة زائفة، اسم مقروء يعيد المُجمِّع كتابته إلى تعليمة حقيقية. تصبح التعليمة أدناه، حيث rd هو zero لذا تُهمل القيمة القديمة.
csrrc zero, csr, rs
الأسطر أدناه تمسح البت 3 من mstatus، مما يطفئ تمكين المقاطعة العام.
li t0, 8 csrc mstatus, t0
يمسح المعالج هذا البت بنفسه عند بدء فخ، ويستعيده mret، لذا نادرًا ما يحتاج المعالج إلى ذلك. يستخدم البرنامج csrc لحماية مقطع قصير من التعليمات البرمجية من المقاطعات ثم يعيد ضبط البت باستخدام csrs.
يوسّع إلى
csrrc zero, csr, rs
يستبدل المُجمِّع هذه التعليمة الزائفة بالتعليمة الحقيقية أو التعليمات المذكورة أعلاه.
مثال
li t0, 8 csrc mstatus, t0 # clears bit 3 of mstatus
