Cortex-M3/M4架构——应用程序状态寄存器

目录

概要

整数状态标志

Q状态标志

GE位

概要

APSR中包含下面几种状态标志:

        1.整数运算的状态标志(N-Z-C-V位)

        2.饱和运算的状态标志(Q位)

        3.SIMD(单指令多数据)的状态标志(GE位)

整数状态标志

Cortex-M处理器中共存在4个整数标志,如图所示:

APSR的进位标志也可以用于将加减法扩大为超过32位。例如可以将64位加法的高32位放在低32位进位标志。

Q状态标志

Q表示饱和运算过程中产生了饱和,在Cortex-M0中不存在。该位被设置后,在软件清除Q位之前会一直保持置位状态,因此可以在饱和运算流程结束后检查该位确定是否产生了饱和;

在数字信号处理时,若计算结果的保存寄存器位宽度不够,会导致上溢或下溢。饱和算数运算不会像一般算数指令一样丢弃MSB,而是将结果强制置为最大值或最小值以降低信号畸变影响;

GE位

GE位域在APSR中占用4位,在Cortex-M3中不存在。许多SIMD指令都会更新该标志位。对于具有16位数据的SIMD指令,第0和1位由低半字的结果控制,第2和3位由高半字的结果控制;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值