回复内容:
对: slancmy 另外,图中为什么要用32位接点形态比较指令,而不用16... 内容的回复!
-------------------------
这需要联系编程工艺要求,与你昨天提问监控看到的D100在2处数据为什么不一样是一个道理。
32位比较指令,比较D100与D200大小,实质上比较的是D100+D101组成的一个32位数与D200+D201组成的一个32位数,连带与D101和D201有关。
16位比较指令,比较D100与D200大小,就是只比较D100与D200的大小,与D101和D201无关。
至于你前面的问题:数据寄存器D9905为什么要传送给d50,直接用不行吗?
这个有时候还真不行,有时候直接用可以。特别做数据长度转换以及数学运算时一定要清楚,表面看同样的D100,到底是16位还是32位,是有符号还是无符号还是浮点数……
扯远一点,有些HMI只认V寄存器不认M寄存器,那么要HMI读M寄存器位,你是不是必须要在PLC中做一些表面看无效的MOV转换?
回复内容:
对:一颗小小草 回复内容:对: slancmy 另外,图中为什么要用32位接点形态比较指令,而不用16... 内容的回复!-------------------------这需要联系编程工艺要求,与你昨天提问监控看到的D100在2处数据为什么不一样是一个道理。32位比较指令,比较D100与D200大小,实质上比较的是D100+D101组成的一个32位数与D200+D201组成的一个32位数,连带与D101和D201有关。16位比较指令,比较D100与D200大小,就是只比较D100与D200的大小,与D101和D201无关。至于你前面的问题:数据寄存器D9905为什么要传送给d50,直接用不行吗?这个有时候还真不行,有时候直接用可以。特别做数据长度转换以及数学运算时一定要清楚,表面看同样的D100,到底是16位还是32位,是有符号还是无符号还是浮点数……扯远一点,有些HMI只认V寄存器不认M寄存器,那么要HMI读M寄存器位,你是不是必须要在PLC中做一些表面看无效的MOV转换? 内容的回复:非常感谢您的指教,昨天的问题明白了。今天又看到别人的这些程序时,感觉不太理解,为什么数据寄存器要多次传送。另外,明明mov不是16位传送指令吗?为什么触点形态比较时却用32位,16位不是也够用吗?