文档详情

可编程序控制器应用第3章3.ppt

发布:2017-05-03约7.9千字共53页下载文档
文本预览下载声明
返回 后一页 前一页 3. 双字增和双字减 INCD,双字增指令。使能输入有效时,把双字长(32位)的有符号输入数(IN)加1,得到双字长的有符号输出结果OUT。 DECD,双字减指令。使能输入有效时,把双字长的有符号输入数(IN)减1,得到双字长的有符号输出结果OUT。 返回 后一页 前一页 4. 应用实例 :食品加工厂对饮料生产线上的盒装饮料进行计数,每24盒为一箱,要求能记录生产的箱数。 图3.35 盒装饮料计数程序 返回 后一页 前一页 3.2.8 逻辑运算 1. 字节逻辑运算 字节逻辑运算包括字节与、字节或、字节异或、字节取反。 AND(与运算)字节(ANDB)指令对两个输入数值(IN1和IN2)的对应位执行AND(与运算)操作,并在内存位置(OUT)中载入结果。OR(或运算)字节(ORB)指令对两个输入数值(IN1和IN2)的对应位执行OR(或运算)操作,并在内存位址(OUT)中载入结果。Exclusive OR(异-或运算)字节(XORB)指令对两个输入数值(IN1和IN2)的对应位执行XOR(异-或运算)操作,并在内存位置(OUT)中载入结果。 返回 后一页 前一页 2. 字逻辑运算 字逻辑运算包括字与、字或、字异或、字取反(INV)。 AND(与运算)字(ANDW)指令对两个输入数值(IN1和IN2)的对应位执行AND(与运算)操作,并在内存位置(OUT)载入结果。OR(或运算)字(ORW)指令对两个输入数值的对应位执行OR(或运算)操作,并在内存位置(OUT)载入结果。Exclusive OR(异-或运算)字(XORW)指令对两个输入数值(IN1和IN2)的对应位执行XOR(异-或运算)操作,并在内存位置(OUT)载入结果。 返回 后一页 前一页 图3.36 字逻辑运算实例 返回 后一页 前一页 3. 双字逻辑运算 双字逻辑运算包括双字与、双字或、双字异或、双字取反。 AND(与运算)双字(ANDD)指令对两个双字输入值的对应位执行AND(与运算)操作,并在双字中载入结果(OUT)。OR(或运算)双字(ORD)指令对两个双字输入值的对应位执行OR(或运算)操作,并在双字中载入结果(OUT)。Exclusive OR(异-或运算)双字(XORD)指令对两个双字输入值的对应位执行XOR操作,并在双字中载入结果(OUT)。 返回 后一页 前一页 3.2.9 传送类指令 1. 单一传送 (1)MOVB,字节传送指令 移动字节(MOVE)指令将输入字节(IN)移至输出字节(OUT),不改变原来的数值。 (2)MOVW,字传送指令 移动字(MOVW)指令将输入字(IN)移至输出字(OUT),不改变原来的数值。 (3)MOVD,双字传送指令 移动双字(MOVD)指令将输入双字(IN)移至输出双字(OUT),不改变原来的数值。 返回 后一页 前一页 移动字节立即读取指令读取实际输入IN(作为字节),并将结果写入OUT,但进程映像寄存器未更新。 (5)BIR,传送字节立即读指令 (4)MOVR,实数传送指令 移动实数(MOVR)指令将32位、实数输入双字(IN)移至输出双字(OUT),不改变原来的数值。 返回 后一页 前一页 移动字节立即写入(BIW)指令从位置IN读取数值并写入(以字节为单位)实际输出OUT,以及对应的进程图像位置。 (6)BIW,传送字节立即写指令 返回 后一页 前一页 2. 块传送 (1)BMB,字节块传送指令 成块移动字节(BMB)指令将字节数目(N)从输入地址(IN)移至输出地址(OUT)。N的范围为1至255。 (2)BMW,字块传送指令 成块移动字(BMW)指令将字数目(N)从输入地址(IN)移至输出地址(OUT)。 (3)BMD,双字块传送指令 成块移动双字(BMD)指令将双字数目(N)从输入地址(IN)移至输出地址(OUT)。N的范围是1至255。 返回 后一页 前一页 3.2.10 移位指令 1. 左移和右移 (1)字节左移和字节右移 SLB和SRB,字节左移和字节右移。使能输入有效时,把字节型输入数据IN左移或右移N位后,再将结果输出到OUT所指的字节存储单元。最大实际可移位次数为8。 返回 后一页 前一页 移位指令对每个移出位补0。如果移位数目(N)大于或等于8,则数值最多被移位8次。如果移位数目大于0,溢出内存位(SM1.1)采用最后一次移出位的数值。如果移位操作结果为0,设置0内存位(SM1.0)。右移和向左移字节操作不带符号。 返回 后一页 前一页 (2)字左移和字右移 SLW和SRW,字左移和字右移。指令盒与字节移位比较,只有名称变为SHR_W和SHR_W。使能输入有效时,把字型输入数据IN左移或右移N位后,再将结果输出到
显示全部
相似文档