完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
sprintf(rgbhChar,"%4.4f",1234.5678);
测试了一下,这句耗时18740个机器周期。 印象里,以前测试过Keil的C51,好像比较复杂的转换也就2K~4K个机器周期(很久了,记忆准确吗?) 现CPU是STM32F449,编译器是IAR,工程选项卡里已经选了硬件乘法器。 为啥这么慢呢? |
|
相关推荐
12个回答
|
|
|
在相同条件下的对比才有用;建议先搞清楚c51的到底是多少
|
|
|
|
|
|
|
|
|
|
|
|
精简指令集的特点即是这样,同样的操作,编译出来的指令数会多很多(取决于做的事情,有些需要的指令多,有的需要的少)。
|
|
|
|
|
|
不同的IDE的printf库的实现都不一样,针对应用,优化的程度不同所以效率也不一样,不能作为一个比较的标准。
|
|
|
|
|
|
实际上C51的频率好像就在8~24MHz之间
|
|
|
|
|
|
预先编译好的obj,工程中的选项对其无影响
|
|
|
|
|
|
主要还有由于楼主用的开发环境不同,是不是用的库中的sprintf()功能不同?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
静态库文件是否使用到硬件的乘法器,决定于编译时候编译器的配置
|
|
|
|
|
|
先转换,然后再发送,肯定运算增多了。
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2810 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2420 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2288 浏览 0 评论
2404 浏览 1 评论
1643 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 18:02 , Processed in 0.739083 second(s), Total 68, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3167