三菱PLC中ENCO S001 D000 K3

三菱PLC中ENCO S001 D000 K3 怎么理解
2024年11月13日 15:52
有2个网友回答
网友(1):

我建议你还是找本三菱PLC的教材,或者下载三菱功能指令的说明看一下,这样一条一条的问很慢啊!
ENCO是编码指令,具体形式为ENCO (S) (D) N
该指令执行时,将(S)中的低2^N位进行编码,编码的结果保存到(D)的低N位中,未被编码结果占用的高位全部清零。编码的2^N位数中,若最高位的1在第M位,则编码的结果为M。编码的2^N位数中只有最高位的1有效,其余的1均被忽略。若(S)为位元件,则对(S)开始的连续2^N位进行编码。
像你举得这个例子,具体运行起来是这样的:如果S和D0的取值如下
S008 S007 S006 S005 S004 S003 S002 S001
0 1 0 1 0 0 0 1
D000(16位)
1110000101101110
则该指令执行后的结果为
S008 S007 S006 S005 S004 S003 S002 S001
0 1 0 1 0 0 0 1
D000变为:0000000000000111
(编码结果为7,因为(S)中的最高位1是S007)

网友(2):

编码指令