一个编程的问题 各位大大求帮助 点击:300 | 回复:6



zc493648362

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:2帖 | 8回
  • 年度积分:0
  • 历史总积分:8
  • 注册:2013年10月21日
发表于:2014-01-16 08:35:29
楼主

遇到一个问题:假设一个寄存器内的数值是1234,如何才能把12和34分别取出来呢?

用什么指令实现呢?




glenxu

  • 精华:0帖
  • 求助:2帖
  • 帖子:28帖 | 592回
  • 年度积分:0
  • 历史总积分:1862
  • 注册:2004年1月13日
发表于:2014-01-16 08:51:54
1楼

请问你用的是谁家的PLC,简单说将数字除以100后取整,就得到前两位,再将得到的结果乘以100,从原数字中减去,就得到了后两位。

当然,最好的办法是将其转换为ASCII码,然后你可以随便组合,组合后再转换回整数就可以了。

通讯网-280395670

  • 精华:11帖
  • 求助:1帖
  • 帖子:432帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2014-01-16 09:50:23
2楼

与FF00做相“与”运算,取出前两位,与00FF相“与”,取出后两位。

阿水--王者之师

  • 精华:25帖
  • 求助:348帖
  • 帖子:1617帖 | 22281回
  • 年度积分:37
  • 历史总积分:98482
  • 注册:2007年3月22日
发表于:2014-01-16 12:22:02
3楼

回复内容:

对: 通讯网-280395670 与FF00做相“与”运算,取出前两位,与00FF相“与... 内容的回复!


  FF00做相“与”运算是如何做 ??直接 FF00 与 1234 做与运算 ?

miy_gongkong

  • 精华:0帖
  • 求助:2帖
  • 帖子:23帖 | 3065回
  • 年度积分:0
  • 历史总积分:12421
  • 注册:2008年9月18日
发表于:2014-01-16 12:57:46
4楼

引用 阿水--王者之师 的回复内容: 回复内容:对: 通讯网-280395670  与FF0... 


 1234 如果是16进制,可以和16#FF00 相与操作, 当它是十进制时,就安1楼的方法,或转换成ASCII 码!

surecom22

  • 精华:0帖
  • 求助:3帖
  • 帖子:5帖 | 466回
  • 年度积分:0
  • 历史总积分:3682
  • 注册:2003年8月16日
发表于:2014-01-16 14:01:54
5楼

ANDW D100 #FF D200

ANDW D100 #FF00 D202

D100 = #1234

通讯网-280395670

  • 精华:11帖
  • 求助:1帖
  • 帖子:432帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2014-01-16 14:20:29
6楼

回复内容:

对: miy_gongkong  引用 阿水--王者之师 的回复内容: 回复内容:对: ... 内容的回复!


 

 1234 如果是16进制,可以和16#FF00 相与操作, 当它是十进制时,就安1楼的方法,或转换成ASCII 码!

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

 

 还是没说对。。。你看看,基本功都没有。。。

应该转成BCD码。。。。。


热门招聘
相关主题

官方公众号

智造工程师