您现在所在的是:

PLC论坛

回帖:1个,阅读:845 [上一页] [1] [下一页]
27947
guanyumou 版主
文章数:10552
年度积分:1130
历史总积分:27947
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2021/11/3 12:55:07
#0楼
分享:64位浮点数转32位浮点数程序

西门子S7-200测试通过,程序网上而来,献给有需要的各位!

一、主程序调用:
64位浮点数保存于VB0开始的存储区中,转换得出的32位浮点数保存于VD100中。
附件 1.jpg
二、子程序符号表:
附件 10.jpg
三、子程序网络1:
1.把双精度浮点数的高16位读取出来
2.左移1位,右移5位之后取到双精度浮点数的指数部分
3.双精度浮点数指数减去1023,再加上127得到单精度浮点数的指数部分
附件 2.jpg
附件 3.jpg
四、子程序网络2:
取出双精度浮点数的高8位
附件 4.jpg
五、子程序网络3:
双精度浮点数指针后移一个字节
附件 5.jpg
六、子程序网络4:
左移4位,右移8位得到单精度浮点数的小数部分
附件 6.jpg
七、子程序网络5:
把单精度浮点数的指数部分加上,右移1位空出符号位
附件 7.jpg
八、子程序网络6:
传送符号位
附件 8.jpg
九、子程序网络7:
最终结果
附件 9.jpg
[此贴子已经被作者于2021/11/3 13:14:33编辑过]
基于各种组态软件\触摸屏\PLC\单片机\变频器Modbus TCP\RTU\ASCII通信编程服务,需要请直接
联系!腾讯扣扣149034219
8580
chengzheng
文章数:1655
年度积分:402
历史总积分:8580
注册时间:2006/7/24
发站内信
发表于:2021/11/3 20:20:31
#1楼
这个是高手,佩服!

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003