浮点数对单片机的速度影响很大么?

浮点数对单片机的速度影响很大么?到底有何影响?... 浮点数对单片机的速度影响很大么?到底有何影响? 展开
 我来答
申税炸蛋
推荐于2017-11-25 · TA获得超过466个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:190万
展开全部
一般来说,普通单片机都不具备硬件浮点数运算功能,也就是说单片机实际上是不直接支持浮点数的数据类型的数据的,浮点数主要通过编译器来软实现,浮点数精度和长度与编译器有关,一般有用32位(单精度)和64位数据(双精度)以科学计数法来表示一个浮点数,具体可参考浮点数表示方式。而普通单片机通常是8位或16位,要将这32位数据处理为一个浮点数,中间的运算过程可想而知有多大。举个列子吧,51单片机用keil编译器每增加一次浮点数运算代码增加约有几十到上百Byte。运行速度当然就慢下来了。
追问
单片机支持强制转换么?
追答
强制类型转换,通俗一点来说就是不改变数据在内存中的二进制实体但使编译器将该二进制实体认作另一种数据,如一个二进制实体 10000001,8位无符号数就表示129,8位无符号数就是-1。也就是说强制类型转换不会改变该数据在内存中的存储但他表示的意思却不一样了。同样浮点数数也是一样的,既然一个单精度无符号数是32位字节的二进制数来表示的,那么当然可以把这32位二进制表示为整型有符号数和无符号数了。强制类型转换都是由编译器完成的,单片机只负责运算就可以了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式