目录
一、简介:
组合位是由多个连续的位元件组合而成的数据结构。每个组合位由一个首位位元件和多个连续的位元件组成,用KnX、KnY、KnM、KnS表示,其中n表示组数,数值在1~8之间。位元件有输入继电器(X)、输出继电器(Y)、辅助继电器(M)和状态继电器(S)等四种。通过将连续的位元件合并成一个单元,可以更方便地进行数据存储和处理。
二、组合结构:
组合数+首位位元件
组合数:由Kn组成,K是整数、n是数值;每一组组合数由四位组成,即从首位位元件向后算起,一共向后算四位。
首位位元件:由位元件加起始位组成—Y0,位元件有输入继电器(X)、输出继电器(Y)、辅助继电器(M)和状态继电器(S)四种。
例子:K1Y0展开是什么数?;K2Y0呢?
解析:首先看是哪种位元件及其起始位,然后看有几组组成。K1Y0—位元件:输出继电器(Y)、起始位是:Y0、组数:1组。
K1Y0=[Y0 Y1 Y2 Y3]。
K2Y0=[Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7] 元件:输出继电器(Y) 起始位是:Y0 组数:2组。
三、特殊情况:
组合位与MOV指令的使用
在三菱FX3U中,当组合位与MOV指令使用时情况是不一样的,直接上栗子!!!
例子:[MOV K5 K1Y0]结果是什么?
从上面叙述分析,K1Y0=[ Y0 Y1 Y2 Y3],所以就是将5这个数分别赋值给Y0 Y1 Y2 Y3。不知道屏幕前的你是否这样想?从我的“特殊情况”可以看出这个不是正确答案。
正解:当组合数与MOV使用时,这时K1Y0=[Y0.0 Y0.1 Y0.2 Y0.3],在这之前我们需要知道Y0是由8个位组成即Y0.0~Y0.7。而K5也需要转换为二进制数,5的二进制数是0101,所以[MOV K5 K1Y0]= [Y0.0 Y0.1 Y0.2 Y0.3]对应[1 0 1 0]或者[Y0.3 Y0.2 Y0.1 Y0.0]对应[0 1 0 1]
四、总结:
1、组合数与其他指令使用时不是像特殊情况这样按二进制位赋值。
2、组合位使用对象是X、Y、M、S这四种。