取整和取余数大家有什么好的方法?

2020-01-01 17:44发布

本帖最后由 xurenhui 于 2017-1-4 16:21 编辑

1.芯片是STM8S003K3
2.编译软件是IAR 6.3.16版本
3.如:Timer_Suffer[1] = Get_value/1000;//取整数 ---------------该方法大概占用12个字节,采用高级优化
         Timer_Suffer[2] = Get_value%100%10;//------------------该方法占用16个字节,采用高级优化
4.有什么简单点算法,使占用flash小一点,运算速度慢一点都没有关系,感觉自己种方法太笨拙了。
5.现在发现空间不够,所以希望大家给点建议,谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
37条回答
nnmnnm
1楼-- · 2020-01-03 06:59
你再怎么优化都是治标,治本的方案就是将IAR换成COSMIC。
至少节省1K字节出来,足够你以后各种折腾
落叶知秋
2楼-- · 2020-01-03 09:22
 精彩回答 2  元偷偷看……
takashiki
3楼-- · 2020-01-03 12:00
nnmnnm 发表于 2017-1-4 18:49
楼主的意思大概是Get_value%100/10吧

不是的,因为Get_value是三位数的,采用两次取模是获得个位数值
xurenhui
4楼-- · 2020-01-03 13:12
xurenhui 发表于 2017-1-4 19:48
不是的,因为Get_value是三位数的,采用两次取模是获得个位数值

1、COSMIC是不是比IAR强自己装一下试试就知道了,我一向是选Release模式,+Debug兼容,这样代码又小又方便调试。
2、获得个位数Get_value % 10不就完了?
xurenhui
5楼-- · 2020-01-03 18:10
楼上对头,撸主为啥要取两次模?

编辑原因:修改语病。
takashiki
6楼-- · 2020-01-03 22:52
xurenhui 发表于 2017-1-4 19:46
COSMIC有这么厉害吗,我这个IAR版本是最新的,
COSMIC没有使用过,

cosmic当然牛逼,对付st的控制器不知道多少年了,iar对付stm8只是二把刀而已。

一周热门 更多>