单片机
返回首页

51单片机逻辑运算指令表与示例

2017-10-15 来源:eefocus

 

1.逻辑运算指令的一般性说明

与、或、异或的逻辑运算指令可以Acc或direct为目标。但是以direct为目标时,另一操作数只能是Acc或立即数。

与、或、异或是对位逻辑运算。

其他逻辑运算指令只对Acc操作。


小循环不影响Cy,大循环Cy在循环圈内。


除了RLC和RRC,逻辑运算指令不影响P以外的标志位。



2.与、或、异或的特殊用途

用ANL指令屏蔽指定位


例:ANL  A,#0FH  ;屏蔽高4位 

用ORL指令将指定位置1


例:ORL  A,#0FH  ;将低4位置1 

用ORL指令拼接一个字节


例:ANL  A,#0FH 

ANL  B,#0F0H 

ORL  A,B


用XRL指令将指定位取反 

例:XRL  A,#55H  ;将D0、D2、D4、D6等位取反


3.循环移位指令的应用


除法运算


左移=无符号数乘2,右移=有符号数除2。

例:A×B,积存(BA)

算法:乘数在(A),积在(R2)(A)。 

1)(A)右移一位;


2)(A)移出的一位若为1,则(R2)+被乘数(B);


3)积(R2)(A)双字节右移一位;第2、3步循环8次。


为简化,假定为4位,循环4次。(A)=1011, (B)=1111



MOV  R2,#0


MOV  R3,#8


CLR   C


RRC  A


 LP:XCH  A,R2


JNC  RRR

ADD  A,B


RRR:RRC  A


XCH  A,R2  ;① 

RRC  A       ;②

DJNZ  R3,LP


MOV  B,R2


   下表第一列为:循环次数-执行点


其余各列为执行点的操作结果。

 

逻辑尺

以二进制数表示二值逻辑序列,逐位移出,并据此行逻辑控制。


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 家用电源无载自动断电装置的设计与制作

  • 开关电源的基本组成及工作原理

  • 带有短路保护系统的5V直流稳压电源电路图

  • 如何构建一个触摸传感器电路

  • 如何调制IC555振荡器

  • 基于ICL296的大电流开关稳压器电源电路

    相关电子头条文章