RISC 架构 指令集及寄存器对比 ARM32 ARM64 RV32 RV64

  • 指令集

在这里插入图片描述

  • 寄存器

在这里插入图片描述

ARM64与ARM32
aarch64的指令集是 A64

A64移除了批量加载寄存器指令 LDM/STM, PUSH/POP, 使用STP/LDP 一对加载寄存器指令代替;
A64没有提供访问CPSR的单一寄存器,但是提供访问PSTATE的状态域寄存器;
A64没有协处理器的概念,没有协处理器指令MCR,MRC;
A64相比A32少了很多条件执行指令,只有条件跳转和少数数据处理这类指令才有条件执行.
	b.<cond>
在Arm-v8架构中,直接访问PC的方式也同x86一样,被禁止了
ARM64与RV
RISCV也有一个恒为0的寄存器为x0 ,ARM64中为 ZR寄存器
RISCV 和 ARM64 一样,不能直接访问(读写)PC

没有mv,bic,neg,无条件跳转label指令,
	而是采用伪指令

没有位set,位clr指令
	而是用其他指令替代
	Bitwise operations supported are OR (bit set), AND (bit clear), and XOR (bit toggle)

没有多字节load/store 指令

只有一个sp寄存器(X2)
	arm32 为一个特权级准备了多个bank,arm64为每一个特权级准备了一个

riscv 指令没有 cond 和S 后缀
	ARM32的指令模板 为 MNEMONIC{S}{cond} {Rd}, Operand1, Operand2
	ARM64 的指令模板中没有 {S} {cond} ,但是将某些指令加上{S} {cond} 直接做成了指令
		例如 ADCS (在arm32中没有ADCS,只有ADC,可以加后缀生成ADCS)
		例如 b.eq (在arm32中没有b.eq,只有b,可以加后缀生成beq)
		但是可见
	riscv 没有后缀的概念 
		根本不存在 S(不管是后缀还是直接带有S的指令)
			怎么处理进位
				x10是低32位相加的结果,如果结果小于一个加数,那么表示是有进位的,否则就没有。因此通过sltu指令,就可以得到低32位的进位结果。
		没有{cond} , 但存在很多跳转指令带了 类似条件的东西,例如 beq,但是这个条件和ARM64/32 完全不同
			riscv 的 beq 中的 eq 不是后缀 ,beq是个指令
			且 beq 不根据之前指令的状态来运行,而是判断当前操作数中的 大小,来决定走不走分支
		

		
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RISC-V的指令集RV32I是其基本指令集之一,其中“RV32”指的是32RISC-V指令集,而“I”则表示RV32I是基本指令集RV32I包含了一些基本的指令,例如算术逻辑操作、分支跳转指令、访存指令等,以下是RV32I指令集中的一些常用指令: 1. 算术逻辑操作指令:包括加、减、与、或、异或、左移、右移等指令。 2. 分支跳转指令:包括条件分支、无条件分支、跳转指令等。 3. 访存指令:用于访问内存,包括读取和写入内存等操作。 4. 系统调用指令:用于执行系统调用,例如打印输出、文件读写等操作。 以下是RV32I指令集中的一些具体指令: 1. ADD:将两个寄存器中的值相加,并将结果存储到目标寄存器中。 2. SUB:将两个寄存器中的值相减,并将结果存储到目标寄存器中。 3. AND:将两个寄存器中的值进行按位与操作,并将结果存储到目标寄存器中。 4. OR:将两个寄存器中的值进行按位或操作,并将结果存储到目标寄存器中。 5. XOR:将两个寄存器中的值进行按位异或操作,并将结果存储到目标寄存器中。 6. SLL:将一个寄存器中的值进行左移操作,并将结果存储到目标寄存器中。 7. SRL:将一个寄存器中的值进行右移操作,并将结果存储到目标寄存器中。 8. BEQ:如果两个寄存器中的值相等,则跳转到目标地址。 9. BNE:如果两个寄存器中的值不相等,则跳转到目标地址。 10. LW:从内存中读取一个32位的数据,并将其存储到目标寄存器中。 总之,RV32I是RISC-V的基本指令集之一,它包含了一些基本的指令,用于实现算术逻辑操作、分支跳转、访存等基本操作,这些指令可以被用来构建各种不同类型的处理器和系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值