小编Li *_*uan的帖子

RISC-V使用LUI和ADDI构建32位常量

LUI(立即加载上限)用于构建32位常量,并使用U型格式。LUI将U中间值放在目标寄存器rd的高20位中,并用零填充最低12位。

我在手册中找到了这个,但是如果我想将0xffffffff移到寄存器中,我需要的所有代码是:

LUI x2, 0xfffff000
ADDI x2, x2, 0xfff
Run Code Online (Sandbox Code Playgroud)

但是发生了一个问题,ADDI将扩展符号以使立即数据成为带符号的数字,因此0xfff将扩展到0xffffffff

这使x20xffffefff,但不0xffffffff

什么是立即移动32位进行注册的良好实现?

riscv

5
推荐指数
3
解决办法
2929
查看次数

标签 统计

riscv ×1