C.LI 能加载哪些立即数?
C.LI 的 CI 立即数字段是 6 位有符号数,因此可加载 -32 到 31。
将有符号 6 位立即数加载到非零 rd:rd = imm。CI 格式。
扩展条件:RV32I/RV64I 的 C 扩展(或 Zca);16 位编码,IALIGN=16。动画按取指成功且无异步中断的条件展示架构效果。
C.LI 使用 CI 格式,将 6 位符号扩展立即数写入非零 rd,并展开为 addi rd, x0, imm。rd 是完整 5 位字段;rd=x0 的编码是 HINT,而不是普通 C.LI 写回。
RV32I/RV64I + C(或 Zca),16 位编码,IALIGN=16。
c.li rd, imm0x556D = 0101010101101101还原完整寄存器字段和立即数,并区分普通指令、HINT 与共享编码。
这是架构效果的教学步骤,不代表处理器流水线或周期。
C.LI 是把一个 6 位有符号立即数写入 rd 的 16 位 CI 编码;常规形式要求 rd 非零。
RV32I/RV64I + C/Zca,c.li x10, 5 把 x10 写为 5;不读取旧 x10,不进行数据内存访问,成功后 PC+2。
C.LI 的 CI 立即数字段是 6 位有符号数,因此可加载 -32 到 31。