首页 理论教育 DECO、ENCO、BON指令的使用方法详解

DECO、ENCO、BON指令的使用方法详解

时间:2023-06-24 理论教育 版权反馈
【摘要】:图5-30所示为ENCO指令的应用格式和使用范围。图5-30 ENCO指令的应用格式和使用范围图5-30 ENCO指令的应用格式和使用范围图5-31 ENCO指令执行示意图在图5-31中,对源操作数M10为首地址的连续八个位元件M10~M17进行编码,其结果存入D0中。

DECO、ENCO、BON指令的使用方法详解

1.DECO

DECO是译码指令,16位操作有DECO、DECO(P)。其功能是将目标元件的某一位置1,其他位置0,置1的位的位置由源操作数S为首地址的n位连续位元件或数据寄存器所表示的十进制码决定。常数n标明参与该指令操作的源操作数共n位,目标操作数共有2n位。图5-28所示为DECO指令的应用格式和使用范围。

978-7-111-43994-3-Chapter05-43.jpg

图5-28 DECO指令的应用格式和使用范围

978-7-111-43994-3-Chapter05-44.jpg

图5-29 DECO指令执行示意图

在图5-28中,以X0为首地址的3位(n=3)X2X1X0=101,用十进制数表示为5;当X1=ON时,执行DECO指令,将以M10为首地址的8位(23=8)中的第5位置1,其他位置0。其执行过程如图5-29所示。

2.ENCO

ENCO是编码指令,16位操作有ENCO、ENCO(P)。其功能是将源操作数为1的最高位的位置存放在目标元件中。图5-30所示为ENCO指令的应用格式和使用范围。

978-7-111-43994-3-Chapter05-45.jpg

图5-30 ENCO指令的应用格式和使用范围(www.xing528.com)

978-7-111-43994-3-Chapter05-46.jpg

图5-31 ENCO指令执行示意图

在图5-31中,对源操作数M10为首地址的连续八个位元件M10~M17进行编码,其结果存入D0中。若M13=1,其余位均为0,则ENCO指令执行后将3存入到D0中。则D0=0000000000000011。如果M10~M17中有两个或两个以上的位为1,则只有最高位的1有效。

3.BON

BON是位判别指令,16位操作有BON、BON(P)和32位操作(D)BON、(D)BON(P)两种形式。

其功能是判断源操作数第n位的状态并将结果存放在目标元件中。常数n表示对源操作数首位(0位)的偏移量。如果n=0是判断第1位的状态;n=15时是判断第16位的状态。因此对于16位源操作数,n的取值范围是0~15,对于32位操作,n的取值是0~31。图5-32所示为BON指令的应用格式和使用范围。

978-7-111-43994-3-Chapter05-47.jpg

图5-32 BON指令的应用格式和使用范围

在图5-32中,X1闭合时,每扫描一次梯形图就将D10的第15位状态存入到M10中去。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈