PLC课件___第4章功能指令(C20-49)_第1页
PLC课件___第4章功能指令(C20-49)_第2页
PLC课件___第4章功能指令(C20-49)_第3页
PLC课件___第4章功能指令(C20-49)_第4页
PLC课件___第4章功能指令(C20-49)_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、4.2.4 4.2.4 算术与逻辑运算类指令算术与逻辑运算类指令(FNC20(FNC20FNC29FNC29共共1010条条) ) 4.2 FX2N4.2 FX2N的常用功能指令的常用功能指令 1.加法指令:加法指令:FNC20 (D)ADD(P)lADD指令将两个源操作数指令将两个源操作数S1、S2相加,结果放到相加,结果放到目标元件目标元件D中。中。两个源数据进行二进制加法后传递到目标处,各数据两个源数据进行二进制加法后传递到目标处,各数据的最高位是正(的最高位是正(0)、负()、负(1)的符号位,这些数据以)的符号位,这些数据以代数形式进行加法运算,如代数形式进行加法运算,如5(8)3

2、ADD指令有指令有4个标志位,个标志位,M8020为为0标志,标志,M8021为借为借位标志位。位标志位。M8022为进位标志位,为进位标志位,M8023为浮点标志位。为浮点标志位。 u运算结果为运算结果为0,则零标志位,则零标志位M8020置置1,运算结果超过,运算结果超过32,767(16位运算)或位运算)或2147483647(32位运算)则进位运算)则进位标志位位标志位M8022位置位置1 u如果运算结果小于如果运算结果小于32767(16位运算)或位运算)或2147483467(32位运算)则借位标志位位运算)则借位标志位M8021置置1 lSUB指令将指定的两个源操作数进行二进制代

3、数减法指令将指定的两个源操作数进行二进制代数减法运算,并将相减的结果送入指定的目标元件中储存。运算,并将相减的结果送入指定的目标元件中储存。 2.减法指令:减法指令: FNC21 (D)SUB(P)lMUL指令将指定的两个源操作数进行二进制代数乘法指令将指定的两个源操作数进行二进制代数乘法运算,并将相乘结果送入指定的目标软元件中储存。运算,并将相乘结果送入指定的目标软元件中储存。3.乘法指令:乘法指令: FNC22 (D)MUL(P)在在32位运算中,若目标元件使用位软元件,只能得到位运算中,若目标元件使用位软元件,只能得到低低32位的结果,不能得到高位的结果,不能得到高32位的结果。这时应先

4、向字位的结果。这时应先向字元件传送一次后再进行计算,利用字元件作目标时,不元件传送一次后再进行计算,利用字元件作目标时,不可能同时监视可能同时监视64位数据内容,只能通过监控运算结果的位数据内容,只能通过监控运算结果的高高32位和低位和低32位并利用下式计算位并利用下式计算4位数据内容。这种情位数据内容。这种情况下,建议最好采用浮点运算。况下,建议最好采用浮点运算。 64位结果(高位结果(高32位数据)位数据)232低低32位数据位数据lDIV指令将指定的两个源操作数进行二进制除法运算,指令将指定的两个源操作数进行二进制除法运算,并将相除的商和余数分别送入指定的目标软元件中储存。并将相除的商和

5、余数分别送入指定的目标软元件中储存。4.除法指令:除法指令: FNC23 (D)DIV(P)lINC指令将指定的目标软元件的内容加指令将指定的目标软元件的内容加1lDEC指令将指定的目标软元件的内容减指令将指定的目标软元件的内容减15.加加1指令:指令:FNC24(D)INC(P)6.减减1指令:指令:FNC25(D)DEC(P)INC指令:指令:16位运算时,如果位运算时,如果+32767加加1变成变成32768,标志位不置位;,标志位不置位;32位运算时,如果位运算时,如果+2147483647加加1变成变成2147483648,标志位,标志位不置位不置位 在连续执行指令中,每个扫描周期都

6、将执行运算,必须注意。在连续执行指令中,每个扫描周期都将执行运算,必须注意。所以一般采用输入信号的上升沿触发运算一次所以一般采用输入信号的上升沿触发运算一次 DEC指令:指令:16位运算时,如果位运算时,如果32768再减再减1,值变为,值变为+32767,标志位不置,标志位不置位;位;32位运算时,如果位运算时,如果2147483648再减再减1,值变为,值变为+2147483647,标志位不置位标志位不置位 7.逻辑与指令:逻辑与指令:FNC26(D)WAND(P)8.逻辑或指令:逻辑或指令:FNC27(D)WOR(P)9.逻辑异或指令:逻辑异或指令:FNC28(D)WXOR(P)u指令功

7、能:将指定的两个源操作数(字或双字数据)指令功能:将指定的两个源操作数(字或双字数据)按位相按位相“与与”、“或或”、“异或异或”,并将结果送入指定,并将结果送入指定的目标软元件储存。的目标软元件储存。lNEG指令将指定目标元件中的内容各位先取反指令将指定目标元件中的内容各位先取反(01,10),然后加),然后加1,再将结果送入原目标软,再将结果送入原目标软元件。元件。 10.求补指令:求补指令:FNC29(D)NEG(P)u注意:求补同求补码是不同的。注意:求补同求补码是不同的。 求补码的规则是:求补码的规则是:“符号位不变,数值位求反加符号位不变,数值位求反加1”,对,对H000C求补码结

8、果将是求补码结果将是H7FF4,两者的结果不一样。,两者的结果不一样。 求补指令是绝对值不变的变号运算,求补前的求补指令是绝对值不变的变号运算,求补前的H000C的真的真值是十进制值是十进制12,而求补后,而求补后HFFF4的真值是十进制的真值是十进制-12。 u求补指令一般使用其脉冲执行方式,否则每个扫描周求补指令一般使用其脉冲执行方式,否则每个扫描周期都将执行一次求补操作。期都将执行一次求补操作。 4.2.5 4.2.5 循环与移位类指令(循环与移位类指令(FNC30FNC30FNC39FNC39共共1010条)条) 4.2 FX2N4.2 FX2N的常用功能指令的常用功能指令 1.循环右

9、移位指令:循环右移位指令:FNC30 (D)ROR(P)2.循环左移位指令:循环左移位指令:FNC31 (D)ROL(P)u循环右移位指令循环右移位指令ROR:将指定目标元件中的二进制:将指定目标元件中的二进制数按照指令中数按照指令中n所规定的移动的位数由高位向低位移动,所规定的移动的位数由高位向低位移动,最后移出的一位同时被送入进位标志位最后移出的一位同时被送入进位标志位M8022。u采用组合位元件做目标操作数时,位元件个数必须是采用组合位元件做目标操作数时,位元件个数必须是16个或个或32个个假设假设D10中的数据为中的数据为HFF00,由于指令中,由于指令中K4指示每次指示每次循环右移循

10、环右移4位,所以最低位,所以最低4位被移出,并循环回补进入高位被移出,并循环回补进入高4位中。所以循环右移位中。所以循环右移4位位D10中的内容将变为中的内容将变为H0FF0。最。最后移出的是第后移出的是第3位的位的“0”,它除了回补进入最高位外,同,它除了回补进入最高位外,同时进入进位标志时进入进位标志M8022中。中。 u循环左移位指令循环左移位指令ROL:将指定目目标元件中的二进:将指定目目标元件中的二进制数按照指令规定的每次移动的位数由低位向高位移制数按照指令规定的每次移动的位数由低位向高位移动,最后移出的一位同时被送入进位标志位动,最后移出的一位同时被送入进位标志位M8022。3.带

11、进位循环右移位指令:带进位循环右移位指令:FNC32 (D)RCR(P)4.带进位循环左移位指令:带进位循环左移位指令:FNC33 (D)RCL(P)uRCR指令功能:将指令功能:将指定目标软元件中的指定目标软元件中的二进制数按照指令规二进制数按照指令规定的每次移动的位数定的每次移动的位数由高位向低位移动,由高位向低位移动,最低位移入进位标志最低位移入进位标志位位M8022。uM8022中的内容则中的内容则移动到最高位。移动到最高位。 uRCL指令功能:将指令功能:将指定目标软元件中的指定目标软元件中的二进制数按照指令规二进制数按照指令规定的每次移动的位数定的每次移动的位数由低位向高位移动,由

12、低位向高位移动,最高位移动到进位标最高位移动到进位标志位志位M8022。uM8022中的内容则中的内容则移动到最低位。移动到最低位。5.位右移指令:位右移指令:FNC34 SFTR(P)6.位左移指令:位左移指令:FNC35 SFRL(P)u位右移:将源操作数(位右移:将源操作数(n2位)传送到目的操作数的高位)传送到目的操作数的高n2位中,目位操作数中原有数据以每位中,目位操作数中原有数据以每n2位为一组,依次向低位为一组,依次向低位移动。最低的位移动。最低的n2位数据从其低端溢出。指令执行后源操位数据从其低端溢出。指令执行后源操作数据保持不变作数据保持不变 。u位左移:将源操作数(位左移:

13、将源操作数(n2位)传送到目的操作数的低位)传送到目的操作数的低n2位中,目位操作数中原有数据以每位中,目位操作数中原有数据以每n2位为一组,依次向高位为一组,依次向高位移动。最高的位移动。最高的n2位数据从其高端溢出。指令执行后源操位数据从其高端溢出。指令执行后源操作数据保持不变作数据保持不变 。7.字右移指令:字右移指令:FNC36 WSFR(P)8.字左移指令:字左移指令:FNC37 WSFL(P)字右移:字右移:字左移:字左移:u字右移和字左移指令以字为单位,其工作的过程字右移和字左移指令以字为单位,其工作的过程与位移位相似,是将与位移位相似,是将n1个字右移或左移个字右移或左移n2个字。个字。u使用字右移和字左移指令时应注意:使用字右移和字左移指令时应注意:(1)字移位指令只有)字移位指令只有16位操作,占用个程序步位操作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论