单片机中的逻辑运算怎么算的?
展开全部
第一步:
ANL是逻辑与运算
就是说第一步是A与47H里的内容34H进行与运算。 A=10000011 34H=00110100
与运算特点是有“0”则0 运算结果为00000000=00H 此时累加器A中内容为00H
第二步:
ORL是逻辑或运算
这部分是第一部分运算出来的A与47H地址里的34H进行或运算,得出的结果存放在47H单元中。 A=00H=00000000 47H=00110100 或运算特点是有“1”则1
所以运算结果为00110100=34H运算后47H地址中的内容为34H
第三步:
XRL是逻辑异或指令
R0前面的@说明寻址方式是寄存器寻址。特点是将R0中的内容作为地址,在从此地址中寻找出对应的内容作为R0的内容。题干中说到(R0)=47H 就是R0中的内容为47H @R0就是以R0中的内容47H为地址,找出对应的内容。上一部分已经知道了47H里的内容为34H。回到第三步来,就相当于XRL A,34H A=00H=00000000 34H=00110100 逻辑异或运算的特点是相同则为0,不同则为1,所以结果为00110100=34H 此时累加器A中的内容为34H
第四步:
SWAP是高低四位数据值互换(如果是8位的话) 就是将00110100前四位与后四位互换,换完后还是01000011=43H 最后A中内容为43H
参照下面那位大哥,改过来了,要不误导人咯~~呵呵
ANL是逻辑与运算
就是说第一步是A与47H里的内容34H进行与运算。 A=10000011 34H=00110100
与运算特点是有“0”则0 运算结果为00000000=00H 此时累加器A中内容为00H
第二步:
ORL是逻辑或运算
这部分是第一部分运算出来的A与47H地址里的34H进行或运算,得出的结果存放在47H单元中。 A=00H=00000000 47H=00110100 或运算特点是有“1”则1
所以运算结果为00110100=34H运算后47H地址中的内容为34H
第三步:
XRL是逻辑异或指令
R0前面的@说明寻址方式是寄存器寻址。特点是将R0中的内容作为地址,在从此地址中寻找出对应的内容作为R0的内容。题干中说到(R0)=47H 就是R0中的内容为47H @R0就是以R0中的内容47H为地址,找出对应的内容。上一部分已经知道了47H里的内容为34H。回到第三步来,就相当于XRL A,34H A=00H=00000000 34H=00110100 逻辑异或运算的特点是相同则为0,不同则为1,所以结果为00110100=34H 此时累加器A中的内容为34H
第四步:
SWAP是高低四位数据值互换(如果是8位的话) 就是将00110100前四位与后四位互换,换完后还是01000011=43H 最后A中内容为43H
参照下面那位大哥,改过来了,要不误导人咯~~呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
&(与)符号 |(或符号)
任何数&1值不变 &0得0
任何数|0值不变 |1得1
任何数&1值不变 &0得0
任何数|0值不变 |1得1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询