工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
楼主  发表于: 2008-11-24 19:27

这个程序我分别监控D0和D1 。怎么D0=-32767,D1=0我试了很多,大于32767(二进制的15个1)的数,D0都为负数,D1都为0,这是为什么?望高手能给解答。
工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
1楼  发表于: 2008-11-25 12:23
这个问题我做了好多实验,都没有得出满意的结果。谁能指点一下。
工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
2楼  发表于: 2008-11-27 12:33
我试过了,只要低“字”的最高位不为1,显示就没问题。这个位就不应是符号位了呀。怎没人发表看法呢?
工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
3楼  发表于: 2008-11-29 12:27
站长: 您能给我一下看法吗?
王锐
向大家学习
级别: 工控侠客
精华主题: 1 篇
发帖数量: 654 个
工控威望: 3295 点
下载积分: 6691 分
在线时间: 1062(小时)
注册时间: 2008-10-24
最后登录: 2014-01-09
查看王锐的 主题 / 回贴
4楼  发表于: 2008-11-29 12:38
一个数据寄存器最大值是32767  若你再加肯定为负  假设传个-1到D0中去  那么实际D0中值应是32767加上32768减去1的值再加上1   由于32767+1等于-32768因此还需在加1
chenlf
级别: 家园常客
精华主题: 0
发帖数量: 245 个
工控威望: 527 点
下载积分: 573 分
在线时间: 1109(小时)
注册时间: 2007-07-04
最后登录: 2024-05-14
查看chenlf的 主题 / 回贴
5楼  发表于: 2008-11-29 17:06
低“字”的最高位32位监控时当然不是符号位,但你把它当成16位数来监控它就是符号位了,低“字”的最高位为1,当然它就是负数了。
sjm213
有小知识,无大学问。
级别: 论坛版主

精华主题: 7 篇
发帖数量: 5168 个
工控威望: 7391 点
下载积分: 156824 分
在线时间: 3123(小时)
注册时间: 2007-11-21
最后登录: 2024-05-14
查看sjm213的 主题 / 回贴
6楼  发表于: 2008-11-29 17:10
引用
引用第5楼chenlf于2008-11-29 17:06发表的  :
低“字”的最高位32位监控时当然不是符号位,但你把它当成16位数来监控它就是符号位了,低“字”的最高位为1,当然它就是负数了。



D1为0,是因为设置的数还不够大~~大于65535时就能看到D1的数值变化了。
chenlf
级别: 家园常客
精华主题: 0
发帖数量: 245 个
工控威望: 527 点
下载积分: 573 分
在线时间: 1109(小时)
注册时间: 2007-07-04
最后登录: 2024-05-14
查看chenlf的 主题 / 回贴
7楼  发表于: 2008-11-29 17:16
低“字”的最高位32位监控时当然不是符号位,但你把它当成16位数来监控它就是符号位了,低“字”的最高位为1,当然它就是负数了。
要超过16个1,也就是11111111111后高位数才开始显示数据,低位数就是负数了。
小蜜蜂
你让我滚,我滚了。你让我回来,对不起,滚远了...
级别: 论坛先锋

精华主题: 0
发帖数量: 1383 个
工控威望: 1485 点
下载积分: 13219 分
在线时间: 2177(小时)
注册时间: 2008-03-19
最后登录: 2024-05-14
查看小蜜蜂的 主题 / 回贴
8楼  发表于: 2008-11-29 19:34


我的监控没有负值,D0=32679
chenlf
级别: 家园常客
精华主题: 0
发帖数量: 245 个
工控威望: 527 点
下载积分: 573 分
在线时间: 1109(小时)
注册时间: 2007-07-04
最后登录: 2024-05-14
查看chenlf的 主题 / 回贴
9楼  发表于: 2008-11-29 20:07
小蜜蜂你没超过32767呀怎么会是负值
小蜜蜂
你让我滚,我滚了。你让我回来,对不起,滚远了...
级别: 论坛先锋

精华主题: 0
发帖数量: 1383 个
工控威望: 1485 点
下载积分: 13219 分
在线时间: 2177(小时)
注册时间: 2008-03-19
最后登录: 2024-05-14
查看小蜜蜂的 主题 / 回贴
10楼  发表于: 2008-11-29 20:15
哦,我知道了,刚才贴出来就知道不对了,可是和别人聊天,忘了改过来了!呵呵!