• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
楼主  发表于: 2010-11-24 16:08
(MOV HFFFF D0)此传送指令执行的数据大于了32767,传送完毕后是否自动存放在32位数据寄存器D1 D0中??如不这样FFFF传到D0就等于-1了。
wei0212007
级别: 论坛先锋
精华主题: 0
发帖数量: 1106 个
工控威望: 1159 点
下载积分: 6900 分
在线时间: 1147(小时)
注册时间: 2007-04-19
最后登录: 2024-05-06
查看wei0212007的 主题 / 回贴
1楼  发表于: 2010-11-24 16:23
楼主这是十六进制吧?
mayanheng
级别: 略有小成
精华主题: 0
发帖数量: 183 个
工控威望: 295 点
下载积分: 1257 分
在线时间: 157(小时)
注册时间: 2010-09-18
最后登录: 2018-09-21
查看mayanheng的 主题 / 回贴
2楼  发表于: 2010-11-24 16:54
我认为(MOV HFFFF D0)此传送指令执行后,是D0通道的16位全等于1
chenpingyg
机械是柱石,电气是灵魂.
级别: VIP会员
精华主题: 0
发帖数量: 1105 个
工控威望: 6705 点
下载积分: 100 分
在线时间: 603(小时)
注册时间: 2007-01-25
最后登录: 2017-04-03
查看chenpingyg的 主题 / 回贴
3楼  发表于: 2010-11-24 16:58
二楼正解
自己的事情自己做.
工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
4楼  发表于: 2010-11-24 17:24
哪FFFF传到D0后不就变成-1了吗?本来HFFFF=K65535我认为就存在D1 D0,当监控D0时等于-1,
但监控32位(D1 D0)时就等于K65535了。只有看成32位才不出错。
工控玩家
澧县电气自动化
级别: 家园常客
精华主题: 0
发帖数量: 549 个
工控威望: 764 点
下载积分: 758 分
在线时间: 579(小时)
注册时间: 2008-09-06
最后登录: 2024-05-13
查看工控玩家的 主题 / 回贴
5楼  发表于: 2010-11-24 17:28
D0的每位都为1,有两种可能,
如当16位看,最高位为符号位,则等于K-1
如当32位看(D1 D0)第16位就不是符号位了,则等于HFFFF也就是K65535
如要保证执行MOV后不出错,只有当32位看了,这个问题没看到资料上说过。
mayanheng
级别: 略有小成
精华主题: 0
发帖数量: 183 个
工控威望: 295 点
下载积分: 1257 分
在线时间: 157(小时)
注册时间: 2010-09-18
最后登录: 2018-09-21
查看mayanheng的 主题 / 回贴
6楼  发表于: 2010-11-24 18:08
4位16进制数。用16位二进制数来表示。够用了。不用32位。再说MOV (21)也不是传送32位数的指令


1 1 1 1     1 1 1 1      1 1 1 1     1 1 1 1         -----------------二进制
    F               F                 F               F             -------------------16进制    


0  0  0  0     0  0  0  0      0  0  0  0        0  0  0  0-----------------二进制

      0                  0                   0                     0       -------------------16进制



0000      0

0001     1
0010       2
0011      3
0100       4
0101        5
0110       6
0111       7
1000       8
1001    9
1010     A

1011   B
1100    C
1101    D
1110    E
1111    F
[ 此帖被mayanheng在2010-11-24 18:24重新编辑 ]
mayanheng
级别: 略有小成
精华主题: 0
发帖数量: 183 个
工控威望: 295 点
下载积分: 1257 分
在线时间: 157(小时)
注册时间: 2010-09-18
最后登录: 2018-09-21
查看mayanheng的 主题 / 回贴
7楼  发表于: 2010-11-24 18:30
不知楼主的32767是个什么数,10进制,8进制,16进制,2进制 BCD码????
大概是10进制  一般PLC不认10进制 一般是16进制,2进制 BCD码
[ 此帖被mayanheng在2010-11-24 18:42重新编辑 ]
刘洋88
级别: 略有小成
精华主题: 0
发帖数量: 145 个
工控威望: 277 点
下载积分: 838 分
在线时间: 49(小时)
注册时间: 2009-10-08
最后登录: 2018-02-05
查看刘洋88的 主题 / 回贴
8楼  发表于: 2010-11-24 18:56
我认为(MOV HFFFF D0)此传送指令执行后,是D0通道的16位全等于1
sjm213
有小知识,无大学问。
级别: 论坛版主

精华主题: 7 篇
发帖数量: 5168 个
工控威望: 7391 点
下载积分: 156814 分
在线时间: 3123(小时)
注册时间: 2007-11-21
最后登录: 2024-05-13
查看sjm213的 主题 / 回贴
9楼  发表于: 2010-11-24 20:17
同意楼上。
高位溢出,不会同时传到D1去。
32位需要使用DMOV。
5921338
好好学习,天天向上
级别: 网络英雄
精华主题: 0
发帖数量: 673 个
工控威望: 10155 点
下载积分: 4660 分
在线时间: 357(小时)
注册时间: 2008-11-27
最后登录: 2024-05-10
查看5921338的 主题 / 回贴
10楼  发表于: 2010-11-24 20:18
MOV是16位传送,指令本身就错了。
自学
lijinniu
级别: 工控侠客
精华主题: 0
发帖数量: 623 个
工控威望: 3668 点
下载积分: 29979 分
在线时间: 1407(小时)
注册时间: 2007-08-17
最后登录: 2024-05-08
查看lijinniu的 主题 / 回贴
11楼  发表于: 2010-11-24 20:58
可能程序会出错因为MOV传送的HFFFF超范围了
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go