ARM指令的条件码有何作用?

发布网友 发布时间:2022-04-23 13:09

我来回答

1个回答

热心网友 时间:2023-10-14 22:52

可以实现条件执行和分支,各种循环和判断中都要用到,也避免了不必要的开支。

条件码为0000,该指令在且仅在CPSR中Z = 1时被执行。

条件码为1000,该指令在且仅在CPSR中C = 1 && Z = 0时被执行。

条件码为1110,无条件执行该指令。

一些体系结构研究中认为,条件码配合编译器,在硬件分支预测电路性能有限的情况下,可以提高分支性能。

不过类似的设计在RISC-V被放弃了,原因是其占据指令集编码的开销不足以cover简单分支预测性能的提升幅度。RV选择约定静态分支预测时,BP单元遇到分支统一选择向后跳转,编译器也尽可能产生向后跳转的分支代码。

arm指令简介:

ARM指令集是指计算机ARM操作指令系统。在ARM中有两种方式可以实现程序的跳转:一种是跳转指令;另一种是直接向PC寄存器(R15)中写入目标地址值。

ARM指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令六大类。



声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com