三菱FX1N PLC编程时,怎么将运算结果为32位转换成16位。

2024-11-06 17:25:21
推荐回答(3个)
回答1:

给你一个思路:
1.若D0为你的流量设定值,则D1为保留的32位双字整数的高位字;
2.当D0大于等于0时,D1赋值为0;当D0小于0时,D1赋值为FFFFH;
3.双字比较时,用D0+D1乘以10000作为双字比较的其中一个值;

反过来,将32位整数转为16位就要考虑数值的溢出问题了
(你的数值还是要除去放大的10000倍再作处理,否则就不对,即使有对应的指令)。

回答2:

1.若D0为流量设定值,则D1为保留的32位双字整数的高位字;
2.当D0大于等于0时,D1赋值为0;当D0小于0时,D1赋值为FFFFH;
3.双字比较时,用D0+D1乘以10000作为双字比较的其中一个值;

反过来,将32位整数转为16位就要考虑数值的溢出问题了
(数值还是要除去放大的10000倍再作处理,否则就不对,即使有对应的指令)。

回答3:

你把流量设定值(16位整数)转换成32位就可以比较了的。数据转换一般是从短往长方向转换,反之,若高位字不为0,则转换数据被截除了高位数引起错误。