数据拆分的问题 点击:749 | 回复:6



林斌123456

    
  • 精华:0帖
  • 求助:44帖
  • 帖子:45帖 | 40回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2020-04-05 15:51:52
楼主
求助帖30分-已结帖

32位有符号双整数或实数怎么快速的把高低两个字的16位置数据单独取出来?有没有什么计算器或小工具?

我在三菱PLC和信捷PLC都遇到这个问题,程序中用到很多32数有符号整数和实数,这些数据都要给他赋个初始值。  三菱GXWROK3那是按16位1个格子来填的(如果是16位数据可以直接填,32位数据只能按高低字来对应填进去).,我现在用的土办法。 先用PLC测试我要用的32位数据,监控高低字里分别是什么数据,抄下来,然后再软元件初始值那对应的填进去.  但是这太麻烦了.  请问你们是怎么弄的.


1分不嫌少!


楼主最近还看过



请叫我王老湿

  • [版主]
  • 精华:0帖
  • 求助:0帖
  • 帖子:622帖 | 8548回
  • 年度积分:24
  • 历史总积分:335295
  • 注册:2011年4月25日
发表于:2020-04-06 07:25:23
1楼

在没有更好的办法之前,都是这样弄的,好像有功能指令可以使用,很少用三菱,记不得是哪个

phoenixyqc

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 124回
  • 年度积分:89
  • 历史总积分:625
  • 注册:2009年2月23日
发表于:2020-04-06 14:30:29
2楼

电脑附件的计算器就行啊,查看里改成程序员,然后十进制双字输入数,你就能看到高低位的二进制结果了,高低位二进制再分别算回去

林斌123456

  • 精华:0帖
  • 求助:44帖
  • 帖子:45帖 | 40回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2020-04-06 17:27:19
3楼


回复内容:

对: phoenixyqc 电脑附件的计算器就行啊,查看里改成程序员,然后十进制双... 内容的回复!

-------------------------

是的。 但是也不好算,比如K3333333=H32 DCD5 拆出来的结果是50和56533,但是56533是填不进去的(超出了32767,要填-9033才可以)。 另外这个计算器不能换算浮点数。  我直接用PLC编程软件离线模拟的方法算出来更快。   其实我只是想知道你们在给软元件赋初始值(速度参数等)时是不是也是这样弄。  

yang20908

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 1342回
  • 年度积分:118
  • 历史总积分:7918
  • 注册:2010年4月06日
发表于:2020-04-07 11:34:09
4楼

有很多方法    可以优先考虑SWAP指令

yang20908

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 1342回
  • 年度积分:118
  • 历史总积分:7918
  • 注册:2010年4月06日
发表于:2020-04-07 11:38:41
5楼

大部分PLC  单片机都有SWAP这个指令

Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2020-05-09 12:33:17
6楼

感谢诸位答疑求助。温馨提醒:求助者请在一个月内及时把悬赏积分结贴发放。如果自己已经解决问题,还请到帖子跟帖分享为好。


热门招聘
相关主题

官方公众号

智造工程师