jin12
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看jin12的 主题 / 回贴
楼主  发表于: 2008-07-18 00:13
请问各位高手,为什么程序开始加M8000时,数据寄存器D的初始值变为-1,如果把M8000改为X000时,D的初始值就变为0了????
uthman
QQ:3749615
级别: 家园常客
精华主题: 1 篇
发帖数量: 457 个
工控威望: 817 点
下载积分: 2752 分
在线时间: 778(小时)
注册时间: 2007-10-25
最后登录: 2024-12-25
查看uthman的 主题 / 回贴
1楼  发表于: 2008-07-19 00:22
CML是取反传送指令
k2m214里是00000000取反后就是1111111111111111也就是-1
[ 此贴被uthman在2008-07-19 00:32重新编辑 ]
uthman
QQ:3749615
级别: 家园常客
精华主题: 1 篇
发帖数量: 457 个
工控威望: 817 点
下载积分: 2752 分
在线时间: 778(小时)
注册时间: 2007-10-25
最后登录: 2024-12-25
查看uthman的 主题 / 回贴
2楼  发表于: 2008-07-19 00:39
图片:
仿真结果
uthman
QQ:3749615
级别: 家园常客
精华主题: 1 篇
发帖数量: 457 个
工控威望: 817 点
下载积分: 2752 分
在线时间: 778(小时)
注册时间: 2007-10-25
最后登录: 2024-12-25
查看uthman的 主题 / 回贴
3楼  发表于: 2008-07-19 00:53
用LD X0 ?
即使K2M214里数据是HFF 取反后D0就是HFF00=-256
D0里的数据怎么会=0?
只有一种可能就是这条指令没执行
uthman
QQ:3749615
级别: 家园常客
精华主题: 1 篇
发帖数量: 457 个
工控威望: 817 点
下载积分: 2752 分
在线时间: 778(小时)
注册时间: 2007-10-25
最后登录: 2024-12-25
查看uthman的 主题 / 回贴
4楼  发表于: 2008-07-19 00:55
你让X0强行置ON看看结果?
你会发现和M8000时结果是一样的……