505311849
级别: 探索解密
精华主题: 0
发帖数量: 24 个
工控威望: 134 点
下载积分: 726 分
在线时间: 22(小时)
注册时间: 2017-08-07
最后登录: 2018-06-24
查看505311849的 主题 / 回贴
楼主  发表于: 2017-08-07 22:44
请教,假如一个ID:8fka68005803存到寄存器r1-r6里面,实际每个寄存器存2位,r1存8f,r2存ka,以此类推下去。想问下大神为啥会这样?一个寄存器最多能存2个数字是吗?怎么存的?需要专业解答,像什么16位一个字,8位一个字节以二进制存入等等我都知道了,我就想知道为啥寄存器能存两个数(不是两位数),怎么存的。
zmrs163
级别: 家园常客
精华主题: 0
发帖数量: 376 个
工控威望: 524 点
下载积分: 1472 分
在线时间: 325(小时)
注册时间: 2017-06-12
最后登录: 2024-12-27
查看zmrs163的 主题 / 回贴
1楼  发表于: 2017-08-08 07:51
因为一个ASC码占用一个字节
john42tw
级别: 网络英雄
精华主题: 0
发帖数量: 1278 个
工控威望: 6109 点
下载积分: 52452 分
在线时间: 1124(小时)
注册时间: 2012-04-24
最后登录: 2024-12-28
查看john42tw的 主题 / 回贴
2楼  发表于: 2017-08-08 08:20
標準ASCII碼共 128個 (0~127) = 0111  1111 ===> 8Bit

每一個數字代表一個符號,例如 "8" = 56 = 38(H) = 0011  1000
                                                                                    3         8
"8" ===>給人看的;   0011  1000 ==>機器看的。
eledesigner
懂一点点
级别: 工控侠客
精华主题: 0
发帖数量: 1812 个
工控威望: 2074 点
下载积分: 2732 分
在线时间: 2236(小时)
注册时间: 2009-08-21
最后登录: 2024-12-28
查看eledesigner的 主题 / 回贴
3楼  发表于: 2017-08-08 08:57
你这个是字符串,不是数字
505311849
级别: 探索解密
精华主题: 0
发帖数量: 24 个
工控威望: 134 点
下载积分: 726 分
在线时间: 22(小时)
注册时间: 2017-08-07
最后登录: 2018-06-24
查看505311849的 主题 / 回贴
4楼  发表于: 2017-08-08 10:33
特别感谢二楼和三楼的大神,经过测试是ASCII这种储存情况,膜拜。可是还有个问题,就是普通寄存器r10,正常传送不是以二进制存在里面的吗?如何让它以ASCII形式存在里面?或者是说它里面的存的16位,什么时候表示普通二进制,什么时候表示ASCII,或者我如何设定?
zmrs163
级别: 家园常客
精华主题: 0
发帖数量: 376 个
工控威望: 524 点
下载积分: 1472 分
在线时间: 325(小时)
注册时间: 2017-06-12
最后登录: 2024-12-27
查看zmrs163的 主题 / 回贴
5楼  发表于: 2017-08-08 12:59
没有什么设定不设定的,PLC内部本身存储就都是二进制的,区别就是你读出来的方式罢了,你二进制也可以强行用ASC读出来不过是乱码而已,GX WORKS3本身监视的时候旁边不就是有字符串显示的,如果数据本身不是字符串就都是乱码罢了
heshuqing
级别: 探索解密
精华主题: 0
发帖数量: 26 个
工控威望: 125 点
下载积分: 2347 分
在线时间: 19(小时)
注册时间: 2017-07-13
最后登录: 2018-12-05
查看heshuqing的 主题 / 回贴
6楼  发表于: 2017-08-12 11:11
要知道,存在机器里的都是机器认识的,但他只认识0和1