INC和DEC指令及ADB,SBB,MLB和DVB指令介绍
发布时间:2016-11-07 10:42 来源:欧姆龙 阅读:
6.INC和DEC指令格式:
INC(38) @INC(38)S SDEC(39) @DEC(39)S S其中,操作数S为源通道,可以是IR、SR、hR、AR、LR、DM、*DM。功能: INC为加一指令。进行加一操作时,将S中的BCD码做十进制加一,结果送回S;DEC为减一指令。进行减一操作时,将S中的BCD码做十进制减一,结果送回S。说明: INC和DEC指令的执行不影响进位标志,但影响相等标志。
7.ADB,SBB,MLB和DVB指令格式:
ADB(50) @ADB(50)S1 S1S2 S2D D其中,操作数S1为被加数,S2为加数,它们分别可以是IR、SR、hR、AR、LR、DM、*DM、#;操作数D为目的通道,它可以是IR、SR、hR、AR、LR、DM、*DM。格式:SBB(51) @SBB(51)S1 S1S2 S2D D其中,操作数S1为被减数,S2为减数,它们分别可以是IR、SR、hR、AR、LR、DM、*DM、#;操作数D为目的通道,它可以是IR、SR、hR、AR、LR、DM、*DM。格式:MLB(52) @MLB(52)S1 S1S2 S2D D其中,操作数S1为被乘数,S2为乘数,它们分别可以是IR、SR、hR、AR、LR、DM、*DM、#;操作数D为目的通道,它可以是IR、SR、hR、AR、LR、DM、*DM。
格式:DVB(53) @DVB(53)S1 S1S2 S2D D其中,操作数S1为被除数,S2为除数,它们分别可以是IR、SR、hR、AR、LR、DM、*DM、#;操作数D为目的通道,它可以是IR、SR、hR、AR、LR、DM、*DM。功能: ADB为二进制加法指令,执行二进制加法操作时将S1和S2的内容带进位位一起做二进制加。加出的和送D,并按运算结果置进位标志位和相等标志位。SBB为二进制减法指令,执行二进制减法操作时将S1和S2的内容带进位位一起做二进制减。减得的差送D,并按运算结果置进位标志位和相等标志位。若进位标志被置ON,说明减得的差为负数,此时D中的运算结果为二进制补码。MLB为二进制乘法指令,执行二进制乘法操作时将S1和S2的内容做二进制乘。乘出的积送D。其中积的低四位送D,高四位送D+1。运算结果不影响进位标志位。DVB为二进制除指令,执行二进制除法操作时将S1的内容除以S2。除出的结果送D。其中商送D,余数送D+1。运算结果不影响进位标志位。例5-7:设下面程序段执行之前有源数据: 200通道赋值#7C23。程序段执行一次后有目的数据:hR00通道被赋值#7D19。LD 00001ADB(50)200#00F6hR00
8.COM,ANDW,ORW,XORW和XNRW指令格式:
COM(29) @COM(29)S SANDW(34) @ANDW(34)S1 S1S2 S2D DORW(35) @ORW(35)S1 S1S2 S2D DXORW(36) @XORW(36)S1 S1S2 S2D DXNRW(37) @XNRW(37)S1 S1S2 S2D D其中:操作数S为源通道,它可以是IR、SR、hR、AR、LR、DM、*DM。操作数S1为源通道1,S2为源通道2。它们分别可以是IR、SR、hR、AR、LR、DM、*DM、#。操作数D为目的通道,它可以是IR、SR、hR、AR、LR、DM、*DM。
功能: COM为字求反指令。字求反操作时,将S中的数据按位求反后结果仍送回S。ANDW为字逻辑与运算指令。当字逻辑与运算时,将S1和S2中的数据按位进行逻辑与运算,结果送D中。ORW为字逻辑或运算指令。当字逻辑或运算时,将S1和S2中的数据按位进行逻辑或运算,结果送D中。XORW为字逻辑异或运算指令。当字逻辑异或运算时,将S1和S2中的数据按位进行逻辑异或运算,结果送D中。XNRW为字逻辑同或运算指令。当字逻辑同或运算时,将S1和S2中的数据按位进行逻辑同或运算,结果送D中。说明: 上述所有逻辑运算指令的执行不影响进位标志,但要影响相等标志。
例5-8:下面程序段执行时,只要输入00001由OFF变为ON,就要将hR00中的内容求反一次。若设hR00中有数据6924,则求反指令执行一次后hR00的数据将会成为96DB。LD 00001@COM(29)hR00例5-9:下面程序段中使用00001作为运算选择开关。当选择开关为ON时,将hR00高8位全部置为ON,低8位状态保持不变,运算结果送hR01。当选择开关为OFF时,将hR00高8位全部置为OFF,低8位状态保持不变,运算结果送hR02。LD 00001@ORW(35)hR00#FF00hR01LD NOT 00001@ANDW(34)hR00#00FFhR02。