购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1.7 逻辑位运算

在PLC中,除了处理开关量(位元件)外,还可以处理数据量(字元件)。什么是数字量?数字量就是进行统一处理的多位开关量组成的整体。例如,把 4 位(数位),8 位(字节),16 位(字)和 32 位(双字)二进制数组成的一个整体就是一个数据量。前面所述的编码都是数据量。数据量的引入使PLC的功能得到了充分的扩充。

在数据量的处理中,经常要把二个 n 位二进制数进行逻辑运算处理,其处理的方法是把两个数的相对应的位进行位与位的逻辑运算,这就称为数据量的逻辑位运算。

数据量的位运算有位与、位或、位反和按位异或。逻辑位运算的功能是对数据量的全部或部分进行清零、提取、保留和置反等。下面以 16 位二进制数整体(字)进行说明。

1.位与

参与运算的数据量,如果相对应的两位都为 1,则该位的结果值为 1,否则为 0。口诀:见 0 为 0,全 1 为 1。

“位与”常用于将数据量的某些位清零或提取某些位的值,用“0 与”则清零,用“1与”则保留或提取位值。

例 1.1-23 】 将数据量 0101 1001 与数据量 0000 1111 进行位与。

高 4 位 0101 与 0000 相位与,结果全部变 0,这就叫清零或复位。低 4 位 1001 与 1111相位与,结果仍为 1001,这就叫保留或提取。

2.位或

参与运算数据量,如果相对应的两位都为 0,则该位的结果值为 0,否则为 1,口诀:见 1 为 1,全 0 为 0。

位或常用于将某个运算量的某些位置 1,用“1 或”则置 1 ,用“0 或”则保留或提取位值。

例 1.1-24 】 将数据量 0101 1001 与数据量 0000 1111 进行位或。

高 4 位 0101 与 0000 相位或,结果保留 0101。低 4 位与 111 相位或,结果全部变为 1,这就叫置 1 或置位。

3.位反

将参与运算数据量的相对应位的值取反,即 1 变 0,0 变 1。

4.按位异或

参与运算数据量,如果相对应的两位相异,则该位的结果为 1,否则为 0,口诀:同为0,异为 1。

按位异或有“与 1 异或”该位翻转,“与 0 异或”该位不变的规律,即用“异或 1”则置反,用“异或 0”则保留。

例 1.1-25 】 将数据量 0101 1001 与数据量 0000 1111 进行按位异或。

高 4 位 0101 与 0000 相异或,结果保留为 0101。低 4 位 1001 与 1111 相异或,结果为0110,相当于把 1001 的每一位都进行了求反运算,这就称为置反。

【试试,你行的】

(1)下面是两组二进制数,试写出它们进行位与、位或和按位异或的结果,并分别写出它们各自位反的结果。

A=0010 1100 1001 0100

B=1010 0011 0110 1000

(2)一个二进制数想保留它的高八位,应如何与另一个数进行位运算?二进制数是1000010001010000,试提供三种方法做到。

(3)将二进制数 11000101 全部变为 1,应如何进行位运算? 0kMornJpAFbGPr2DuFAtBC8hfVgptvP0O2bvAzuV1nBLpzI2Ij7wRgQsjtzmusdA

点击中间区域
呼出菜单
上一章
目录
下一章
×