单片机33逻辑运算指令**一、对A累加器进行的逻辑操作:;;:(1).RRA(2).RRCA70C70*(3).RLA(4).RLCA移位指令助记符意义:第一个字母R表示移位操作。第二个字母表示移位方向,L向左;R向右。第三个字母表示是否通过C。为C表示连同C共9位数一起移位无第三字母表示与C无关。;A的内容高低半字节相交换70C70*例:CLRCMOVA,#0E2HRLARLCARRARRCASWAPA;C=0;11100010E2H;11000101;10001010C=1;01000101;10100010C=1;00101010*例:已知30H单元的内容为X,且X为无符号数,求4X送入31H单元存放,求X/4的整数部份送入32H单元存放,(0≤X<63)讨论:将一个二进制数左移一次等于乘2的运算,左移n次等于乘2n同理将其右移一次等于除2的运算,右移n次等于除2n。程序如下:*MOVA,30H;xRLA;2XRLA;4XMOV31H,AMOVA,30H;XCLRC RRCA;X/2CLRCRRCA;X/4MOV32H,A*二、 包含双操作数的逻辑运算指令:一般形式:ANL与ORL第一操作数,第二操作数或XRL异或功能:第一操作数和第二操作数进行相应的逻辑运算,结果在第一操作数指出的地址。源及目的见P50—P51页。例*例1:MOVA,#46HMOV40H,#59HANLA,#37HORL40H,AORLA,40HXRLA,#55H01000110∧00110**********A=06H∨0101100**********H=5F∨00000**********A=5FH01010**********A=0AH*注:逻辑运算结果均在第一操作数中(目的),第二操作数内容不变。*此类逻辑运算指令用途很广,举例:例2用“与”掩码的方法切取数据中需要的部分MOVA,#0F6H;设A中为有符号数①ANLA,#0FH;屏蔽高4位(A)=06H②ANLA,#7FH;屏蔽符号位(A)=76HANLA,#80H;切取符号位(A)=80H0FH,7FH,80H,称为掩码,使用不同的掩码可屏蔽掉不同的部份,留下有用的信息。
单片机33逻辑运算指令 来自淘豆网m.daumloan.com转载请标明出处.