寄存器不能设置负值怎么办? 点击:1943 | 回复:11



richardcg12

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-07-22 20:25:01
楼主

寄存器不能设置负值怎么办?

如-II---------------POSDST  0   M0  D2002  1000

中的D2002不能设置负值怎么办?




笔笔名

  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2008-07-23 07:49:06
1楼

不知道你那D2002是从那里设置???是文本还是触摸屏呢?

richardcg12

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-07-23 09:13:16
2楼

文本设置,文本可以设置负数,但PLCD2002它的范围只能是正值,有什么解决办法吗?

 

二十四桥明月夜

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2008-07-23 09:24:41
3楼

负数也是补码表示的,看上去也是正数,只不过是大正数而已

 

死亡骑士

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 1774回
  • 年度积分:0
  • 历史总积分:2630
  • 注册:2006年7月17日
发表于:2008-07-23 09:26:57
4楼

楼上的正解                         

ZJZC

  • 精华:1帖
  • 求助:0帖
  • 帖子:23帖 | 3984回
  • 年度积分:0
  • 历史总积分:4895
  • 注册:2004年10月18日
发表于:2008-07-23 09:38:25
5楼
16位的数据首次是符号位,如首位是1,则表示是负数;

richardcg12

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-07-23 21:13:06
6楼

还是不太理解,能不能具体点?

richardcg12

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-07-23 21:18:00
7楼

现在是在文本上修改负值,但实际出来的是一个很大的正值

我想要的是修改负值,实际出来的也是负值

就没办法解决这个问题?

 

双片机

  • 精华:0帖
  • 求助:0帖
  • 帖子:36帖 | 631回
  • 年度积分:0
  • 历史总积分:993
  • 注册:2005年5月08日
发表于:2008-07-23 21:59:41
8楼

建议楼主找本《计算机基础》看看。

双片机

  • 精华:0帖
  • 求助:0帖
  • 帖子:36帖 | 631回
  • 年度积分:0
  • 历史总积分:993
  • 注册:2005年5月08日
发表于:2008-07-23 22:07:59
9楼
一般都是补码表示。假设你要把一个16位数设成-1,实际存储的二进制数是1111111111111111,即十六进制FFFFH,十进制的65535。

richardcg12

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-07-23 23:49:49
10楼

理解了,谢谢各位!!!!!!

richardcg12

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 5回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2008-07-24 20:17:32
11楼

今天试下来结果还是失败,我用的罗升的文本,里面是可以设置负数,但PLC的寄存器还是不能设置负数,我在D2002里设置-1000,结果电机的方向还是与1000的方向一样,,

就是脉冲数重-1000变成65...多了郁闷啊!    

就没办法解决吗?


热门招聘
相关主题

官方公众号

智造工程师