Menu Close

RISC-V RV32I 指令 :slli, srli, srai, add,sub,sll,slt,sltu, xor

RV32I, RV64I Instructions

  • opcode :指令操作码
  • imm:立即数
  • func3和funct7:代表指令对应的功能
  • rs1:源寄存器1
  • rs2:源寄存器2
  • rd:目标寄存器(RSIC-V 一个指令可以提供三个寄存器操作)

slli

“SLLI” 是 RISC-V 汇编语言中的指令,代表 “Shift Left Logical Immediate”,用于将一个寄存器的值左移一个立即数指定的位数。

31-27 26-25 24-20 19-15 14-12 11-7 6-2 1-0
00000 0X shamt rs1 001 rd 00100 11
格式
slli rd,rs1,shamt
  • rd:目标寄存器,存储左移操作的结果。
  • rs1:源寄存器,表示要进行左移操作的数。
  • shamt:一个无符号整数,即用于左移操作的位数。
描述:

“SLLI” 指令对寄存器 rs1 中的值执行逻辑左移操作,左移的位数由立即数的低5位指定。在 RV64 中,位 25 被用于表示 shamt[5]

换句话说,这个指令会将寄存器 rs1 中的值逻辑左移立即数的低5位指定的位数,并将结果存储在目标寄存器 rd 中。

Implementation
x[rd] = x[rs1] << shamt

例如,如果你想将寄存器 x1 中的值左移两位,并将结果存储在寄存器 x2 中,相应的 RISC-V 汇编指令将是:

SLLI x2, x1, 2

这个指令将执行 x2 = x1 << 2,即将寄存器 x1 中的值左移两位,并将结果存储在寄存器 x2 中。

 

qwe

除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Leave the field below empty!

Posted in RISC-V教程

Related Posts