回复:关于字节转浮点数的算法

yanxiao

版主

  • 帖子

    12143
  • 精华

    46
  • 被关注

    183

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2012-04-09 20:27:11

6楼

我钻个牛角,大家别学。
1、先用整型计算。5个10进位(字节),就算最高位的字节不超过9,也是超出16位二进制的表示范围。所以,要用32位的整数。
2、BTI、ITD这二个指令,因为没有说要处理数的符号,所以,准备一个全0的四个字节的存贮单元,把的要处理的字节存到最后一个单元,就算BTI、ITD都完成了。
3、从MB500(VB500吧)开始,先把它当个位,乘1(不必乘了),作为累加和的初始值;
4、MB400,乘10。这是32位整型计算。查了下,比浮点运算快。结果加到上面的累加和上;
5、MB300乘100、MB200乘1000、MB100乘10000,统统加到累加和上;
6、累加和转成浮点数(只有一次转换),再乘0.001,就OK啦。

尽量用乘法,因为除法的运算时间更长。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。