相关疑难解决方法(0)

为什么 RISC-V SB 和 UJ 指令类型以这种方式编码?

我正在读一本书“计算机组织和设计 RISC-V 版”,我遇到了 SB 和 UJ 指令类型的编码。

我上面提到的那些类型具有奇怪的编码立即字段。

SB 类型将立即数字段分成两部分。这是有道理的,因为所有指令编码都必须相似。但我不明白为什么下面的直接字段以这种方式编码。

imm[12, 10:5], imm[4:1, 11]
Run Code Online (Sandbox Code Playgroud)

代替

imm[11:5], imm[4:0]
Run Code Online (Sandbox Code Playgroud)

UJ 类型也有这个奇怪的编码立即字段

imm[20,10:1,11,19:12]
Run Code Online (Sandbox Code Playgroud)

代替

imm[19:0]
Run Code Online (Sandbox Code Playgroud)

谁能解释一下?

assembly encoding instruction-set machine-code riscv

11
推荐指数
2
解决办法
2964
查看次数