回复:无符号大数值整数如何处理?

已锁定

lu_zhao_long

  • 帖子

    513
  • 精华

    9
  • 被关注

    33

论坛等级:侠圣

注册时间:2004-09-17

钻石 钻石 如何晋级?

发布于 2024-03-21 13:26:15

1楼

同一个内存地址里面储存的数据,既可以把它当作字节(无符号 或 有符号的整数),也可以把它当作字(无符号 或 有符号的整数),还可以把它当作双字(无符号 或 有符号的长整数,或者 是浮点数)!

在作者没有告诉别人的前提下,每个人看到的结果很大可能就是不一样的。所以,你说的显示的结果出乎你的意料,那只是出乎你的意料而已!

有一个问题:

既然你的仪表采集的是浮点数,那么它就应该是 4 个字节的数据(两个 WORD)。从你的通讯读取指令来看,确实是读取了两个 WORD 的数据。

不过,它的储存地址起始地址是从 VB500,并不是你说的 VW502!

若这个数据真的是浮点数,那你下面的指令应该是直接使用 DI_R 指令,把 VD500 转换成 浮点数才对!注意,是 VD500,不是 VW500!


除非,仪表那边传送来的数据已经乘以一个系数,然后取整成一个不大于 32767 的整数,再转成一个 WORD!以前在 DCS 系统中,为了节省传送的字节数,我这么干过!

深陷于此,我是来“喝水”的! lu_zhao_long@139.com
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有9021条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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