中断浮点运算

文章讲述了在嵌入式系统中如何使用汇编指令__asm进行FPU寄存器的保存和恢复,特别是在FreeRTOS环境下启用FPU支持的宏定义configUSE_TASK_FPU_SUPPORT。此外,还列举了ARM处理器的各种寄存器,包括R系列、VFP和协处理器寄存器的使用。
摘要由CSDN通过智能技术生成

中断浮点运算

__asm(“VPUSH {d0-d15}”); // FPU 寄存器入栈

__asm(“VPOP {d0-d15}”); // FPU 寄存器出栈

FreeRTOS 启用 FPU 支持相关宏:

#define configUSE_TASK_FPU_SUPPORT 2

R0-R15和r0-r15
a1-a4(参数,结果或者临时寄存器,与r0-r3同意)
v1-v8(变量寄存器,与r4-r11同意)
sb和SB(静态基址寄存器,与r9同意)
sl和SL(堆栈限制寄存器,与r10同意)
fp和FP(帧指针,与r11同意)
ip和IP(过程调用中间临时寄存器,与r12同意)
sp和SP(堆栈指针,与r13同意)
lr和LR(连接寄存器,与r14同意)
pc和PC(程序计数器,与r15同意)
cpsr和CPSR(程序状态寄存器)
spsr和SPSR(程序状态寄存器)
f0-f7和F0-F7(FPA寄存器)
s0-s31和S0-S31(VFP单精度寄存器)
d0-d15和D0-D15(VFP双精度寄存器)
p0-p15(协处理器0-15)
c0-c15(协处理器寄存器0-15)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值