关于PLC中寄存器的地址问题 点击:1661 | 回复:9



有道之士

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:21帖 | 28回
  • 年度积分:0
  • 历史总积分:95
  • 注册:2004年10月29日
发表于:2004-12-05 09:15:00
楼主
我想把一个16进制的数16#A0存到VB100中,然后把它的地址给VD200,在把VD200中的数给VD300 我是用MOVB 16#A0 VB100 MOVD &VB100 VD200 MOVD *VD200 VD300 但是为什么VD300中存的数不是16#A0,而是一个很奇怪的数呢? 请大家告诉我为什么还有如何才能实现我的要求那



xzg

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 25回
  • 年度积分:0
  • 历史总积分:220
  • 注册:2002年7月23日
发表于:2004-12-06 15:05:00
1楼
老兄,不用加前面的那个东东,就可以了!用16进制监视再看看吧

qumaoliang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 284回
  • 年度积分:0
  • 历史总积分:301
  • 注册:2003年2月27日
发表于:2004-12-06 16:46:00
2楼
你要用B_I再用I_D

菜鸟1111111111

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 22回
  • 年度积分:0
  • 历史总积分:130
  • 注册:2004年9月22日
发表于:2004-12-06 21:38:00
3楼
数据类型不一致

wangtaotao

  • 精华:2帖
  • 求助:0帖
  • 帖子:27帖 | 193回
  • 年度积分:0
  • 历史总积分:306
  • 注册:2003年6月07日
发表于:2004-12-06 23:12:00
4楼
那应该怎么写呢?关注中~~`

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2004-12-08 09:29:00
5楼
上述运算后vb300中的数是16#A0,由于VD300中字节的排列由高到低是VB300,VB301,VB302,VB303,所以VD300中的数是16#A0000000,作为带符号10进制整数则为-1610612736。

lijin178

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 6回
  • 年度积分:0
  • 历史总积分:39
  • 注册:2004年4月28日
发表于:2004-12-08 11:01:00
6楼
你是用指针做的,所以你监控肯定看不到所谓的16#A0,而是跟楼上说的那样的

harry_dong

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 46回
  • 年度积分:0
  • 历史总积分:938
  • 注册:2003年7月10日
发表于:2004-12-17 09:49:00
7楼
automatic_man: 我不是很明白,指针只是指的vb200, 执行这条语句以后MOVD *VD200 VD300 ,应该是vb200值给了vb300,vb201值给了vb301,vb202值给了vb302,vb203值给了vb303,那vb201,vb202,vb203中的数值不一定是16#00,所以结果不一定是16#A0000000吧,我不知道这样说对不对?

有道之士

  • 精华:0帖
  • 求助:0帖
  • 帖子:21帖 | 28回
  • 年度积分:0
  • 历史总积分:95
  • 注册:2004年10月29日
发表于:2004-12-22 13:04:00
8楼
谢谢大家,现在再看我当时怎么会问那么弱智的问题

小智

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 21回
  • 年度积分:0
  • 历史总积分:112
  • 注册:2004年9月02日
发表于:2004-12-24 15:50:00
9楼
先变整形然后再变成双整

热门招聘
相关主题

官方公众号

智造工程师