用于寄存器-寄存器操作的 R 类型指令
用于短立即数和访存 load 操作的 I 型指令
用于访存 store 操作的 S 型指令
用于条件跳转操作的 B 类型指令
用于长立即数的 U 型指令
用于无条件跳转的 J 型指令
指令格式如下:
其中x0寄存器始终为零寄存器,x1寄存器始终为返回地址寄存器(ra),x2寄存器始终为栈指针(sp),x3寄存器始终为全局指针(gp),x4寄存器始终为线程指针(tp),而其他通用寄存器则可以用于任何目的
PC寄存器是一个32位的地址寄存器,用于存放将要执行的下个地址中的指令码。它有自动加1的功能,但不属于特殊功能寄存器,没有地址,不可访问
20137 0000‘0000’0000‘0010’0000‘0001’0011‘0111
func7 011‘0111
rd 0001’0