arm_sqrt_q31函数的理解

本文介绍了ARM CMSIS函数库中用于快速计算平方根的arm_sqrt_q31函数。通过详细解析函数输入输出及计算过程,阐述了如何处理Q31类型整数的平方根计算,并探讨了对于不同格式(如Qm.n)的整数如何进行相应转换和移位操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ARM CMSIS函数库中有求平方根的快速计算函数arm_sqrt_q31,arm_sqrt_q15等等,花了将近一天时间才搞明白了这个函数的真正含义。

arm_sqrt_q31(q31_t x,  q31_t * pOut):

输入是一个q31类型的整数(记做x,x \le 2^{31},从数学意义上来说,并不限于整数,只要不溢出,下面的式子的转换都是成立的),输出也是一个整数(记做y),

则有:

y=\sqrt{(\frac{x}{2^{31}})} \times 2^{31}=\sqrt{x} \times 2^{15.5}

我们的目标是计算\sqrt{x},于是上式可以变化为

\sqrt{x} = y \times 2^{-15.5},<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值