当前位置 - 股票行情交易網 - 企業服務 - lui什麽意思?

lui什麽意思?

LUI(load upper immediate),高位立即數加載指令格式為 LUI rd,immediate。x[rd] = sext(immediate[31:12] << 12)

其機器碼所示,LUI的opcode為011_0111。該指令是把U-immediate寫入rd的高20位,rd的低12位補零。

通常來說,每條指令的位寬是有壹定的限制的,軟件層面可以叫做encoding 碼。主要包含,指令的指令操作碼,指令操作數,寄存器等信息。假設:lui a0,4112,其是將當前操作數4112存放在a0寄存器的前20位中,此時a0寄存器中存放的是 0000 0001 0000 0001 0000 0000 0000 0000。通常某些指令會對常量進行操作。當當前操作的常量超過這條指令能夠處理的立即數範圍時,就會利用lui 指令,完成擴大立即數範圍的限制。

SRAI(shift right arithmetic immediate),立即數算術右移指令格式為 SRAI rd,rs1,shamt。x[rd] = x[rs1] ? shamt

SRAI的OP-IMM為001_0011,funct3為101,IMM[10]為1。該指令將rs1中的值右移shamt[4:0]位,rs1的高位由原rs1[31]填充(符號位填充),結果寫入rd中。