📄 单片机第十三课.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0047)http://www.onestudy.net/download/elec/dpj13.htm -->
<!-- saved from url=(0048)http://www.21icsearch.com/pmcu/dpjjx/dpjjx15.htm --><HTML><HEAD><TITLE>单片机第十三课</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb_2312-80">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<META content="C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\html.dot"
name=Template></HEAD>
<BODY vLink=#800080 link=#0000ff background=""><FONT lang=ZH-CN face=宋体>
<P align=justify>逻辑与指令</P></FONT>
<P align=justify><FONT lang=ZH-CN face=System>ANL A,Rn</FONT><FONT lang=ZH-CN
face=宋体> </FONT><FONT lang=ZH-CN face=System>;A</FONT><FONT lang=ZH-CN
face=宋体>与</FONT><FONT lang=ZH-CN face=System>Rn</FONT><FONT lang=ZH-CN
face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>与</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL A,direct ;A</FONT><FONT
lang=ZH-CN face=宋体>与</FONT><FONT lang=ZH-CN face=System>direct</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>与</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL A,@Ri ;A</FONT><FONT
lang=ZH-CN face=宋体>与间址寻址单元</FONT><FONT lang=ZH-CN face=System>@Ri</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>与</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL A,#data ;A</FONT><FONT
lang=ZH-CN face=宋体>与立即数</FONT><FONT lang=ZH-CN face=System>data</FONT><FONT
lang=ZH-CN face=宋体>按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>与</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL direct,A ;direct</FONT><FONT
lang=ZH-CN face=宋体>中值与</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>与</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>direct</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL direct,#data
;direct</FONT><FONT lang=ZH-CN face=宋体>中的值与立即数</FONT><FONT lang=ZH-CN
face=System>data</FONT><FONT lang=ZH-CN face=宋体>按位</FONT><FONT lang=ZH-CN
face=System>'</FONT><FONT lang=ZH-CN face=宋体>与</FONT><FONT lang=ZH-CN
face=System>'</FONT><FONT lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN
face=System>direct</FONT><FONT lang=ZH-CN face=宋体>中。</FONT></P><FONT lang=ZH-CN
face=宋体>
<P align=justify>这几条指令的关键是知道什么是逻辑与。这里的逻辑与是指按位与</P></FONT>
<P align=justify><FONT lang=ZH-CN face=宋体>例:</FONT><FONT lang=ZH-CN
face=System>71H</FONT><FONT lang=ZH-CN face=宋体>和</FONT><FONT lang=ZH-CN
face=System>56H</FONT><FONT lang=ZH-CN face=宋体>相与则将两数写成二进制形式:</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>(</FONT><FONT lang=ZH-CN
face=System>71H</FONT><FONT lang=ZH-CN face=宋体>)</FONT> <FONT lang=ZH-CN
face=System>01110001</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>(</FONT><FONT lang=ZH-CN
face=System>56H</FONT><FONT lang=ZH-CN face=宋体>)</FONT> <FONT lang=ZH-CN
face=System>00100110</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>结果</FONT> <FONT lang=ZH-CN
face=System>00100000 </FONT><FONT lang=ZH-CN face=宋体>即</FONT><FONT lang=ZH-CN
face=System>20H</FONT><FONT lang=ZH-CN
face=宋体>,从上面的式子可以看出,两个参与运算的值只要其中有一个位上是</FONT><FONT lang=ZH-CN
face=System>0</FONT><FONT lang=ZH-CN face=宋体>,则这位的结果就是</FONT><FONT lang=ZH-CN
face=System>0</FONT><FONT lang=ZH-CN face=宋体>,两个同是</FONT><FONT lang=ZH-CN
face=System>1</FONT><FONT lang=ZH-CN face=宋体>,结果才是</FONT><FONT lang=ZH-CN
face=System>1</FONT><FONT lang=ZH-CN face=宋体>。</FONT></P><FONT lang=ZH-CN
face=宋体>
<P align=justify>理解了逻辑与的运算规则,结果自然就出来了。看每条指令后面的注释</P>
<P align=justify>下面再举一些例子来看。</P></FONT>
<P align=justify><FONT lang=ZH-CN face=System>MOV A</FONT><FONT lang=ZH-CN
face=宋体>,</FONT><FONT lang=ZH-CN face=System>#45H ;(A)=45H</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>MOV R1</FONT><FONT lang=ZH-CN
face=宋体>,</FONT><FONT lang=ZH-CN face=System>#25H ;(R1)=25H</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>MOV 25H</FONT><FONT lang=ZH-CN
face=宋体>,</FONT><FONT lang=ZH-CN face=System>#79H ;(25H)=79H</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL A</FONT><FONT lang=ZH-CN
face=宋体>,</FONT><FONT lang=ZH-CN face=System>@R1 ;45H</FONT><FONT lang=ZH-CN
face=宋体>与</FONT><FONT lang=ZH-CN face=System>79H</FONT><FONT lang=ZH-CN
face=宋体>按位与,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中为</FONT> <FONT lang=ZH-CN face=System>41H </FONT><FONT lang=ZH-CN
face=宋体>(</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>)</FONT><FONT lang=ZH-CN face=System>=41H</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL 25H,#15H ;25H</FONT><FONT
lang=ZH-CN face=宋体>中的值(</FONT><FONT lang=ZH-CN face=System>79H</FONT><FONT
lang=ZH-CN face=宋体>)与</FONT><FONT lang=ZH-CN face=System>15H</FONT><FONT
lang=ZH-CN face=宋体>相与结果为(</FONT><FONT lang=ZH-CN face=System>25H</FONT><FONT
lang=ZH-CN face=宋体>)</FONT><FONT lang=ZH-CN face=System>=11H</FONT><FONT
lang=ZH-CN face=宋体>)</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ANL 25H,A ;25H</FONT><FONT
lang=ZH-CN face=宋体>中的值(</FONT><FONT lang=ZH-CN face=System>11H</FONT><FONT
lang=ZH-CN face=宋体>)与</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中的值(</FONT><FONT lang=ZH-CN face=System>41H)</FONT><FONT
lang=ZH-CN face=宋体>相与,结果为</FONT><FONT lang=ZH-CN
face=System>(25H)=11H</FONT></P>
<P align=justify><FONT lang=ZH-CN
face=宋体>在知道了逻辑与指令的功能后,逻辑或和逻辑异或的功能就很简单了。逻辑或是按位“或”,即有“</FONT><FONT lang=ZH-CN
face=System>1</FONT><FONT lang=ZH-CN face=宋体>”为</FONT><FONT lang=ZH-CN
face=System>1</FONT><FONT lang=ZH-CN face=宋体>,全“</FONT><FONT lang=ZH-CN
face=System>0</FONT><FONT lang=ZH-CN face=宋体>”为</FONT><FONT lang=ZH-CN
face=System>0</FONT><FONT lang=ZH-CN face=宋体>。例:</FONT></P><FONT lang=ZH-CN
face=System>
<P align=justify>10011000</P></FONT>
<P align=justify><FONT lang=ZH-CN face=宋体>或</FONT> <FONT lang=ZH-CN
face=System>01100001</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>结果</FONT> <FONT lang=ZH-CN
face=System>11111001</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>而异或则是按位“异或”,相同为“</FONT><FONT
lang=ZH-CN face=System>0</FONT><FONT lang=ZH-CN face=宋体>”,相异为“</FONT><FONT
lang=ZH-CN face=System>1</FONT><FONT lang=ZH-CN face=宋体>”。例:</FONT></P><FONT
lang=ZH-CN face=System>
<P align=justify>10011000</P></FONT>
<P align=justify><FONT lang=ZH-CN face=宋体>异或</FONT> <FONT lang=ZH-CN
face=System>01100001</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>结果</FONT> <FONT lang=ZH-CN
face=System>11111001</FONT></P>
<P align=justify><FONT lang=ZH-CN face=宋体>而所有的或指令,就是将与指仿中的</FONT><FONT
lang=ZH-CN face=System>ANL </FONT><FONT lang=ZH-CN face=宋体>换成</FONT><FONT
lang=ZH-CN face=System>ORL</FONT><FONT lang=ZH-CN face=宋体>,而异或指令则是将</FONT><FONT
lang=ZH-CN face=System>ANL </FONT><FONT lang=ZH-CN face=宋体>换成</FONT><FONT
lang=ZH-CN face=System>XRL</FONT><FONT lang=ZH-CN face=宋体>。即</FONT></P><FONT
lang=ZH-CN face=宋体>
<P align=justify>或指令:</P></FONT>
<P align=justify><FONT lang=ZH-CN face=System>ORL A,Rn</FONT><FONT lang=ZH-CN
face=宋体> </FONT><FONT lang=ZH-CN face=System>;A</FONT><FONT lang=ZH-CN
face=宋体>和</FONT><FONT lang=ZH-CN face=System>Rn</FONT><FONT lang=ZH-CN
face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ORL A,direct ;A</FONT><FONT
lang=ZH-CN face=宋体>和与间址寻址单元</FONT><FONT lang=ZH-CN face=System>@Ri</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ORL A,#data ;A</FONT><FONT
lang=ZH-CN face=宋体>和立</FONT><FONT lang=ZH-CN face=System>direct</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ORL A,@Ri ;A</FONT><FONT
lang=ZH-CN face=宋体>和即数</FONT><FONT lang=ZH-CN face=System>data</FONT><FONT
lang=ZH-CN face=宋体>按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ORL direct,A ;direct</FONT><FONT
lang=ZH-CN face=宋体>中值和</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>direct</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>ORL direct,#data
;direct</FONT><FONT lang=ZH-CN face=宋体>中的值和立即数</FONT><FONT lang=ZH-CN
face=System>data</FONT><FONT lang=ZH-CN face=宋体>按位</FONT><FONT lang=ZH-CN
face=System>'</FONT><FONT lang=ZH-CN face=宋体>或</FONT><FONT lang=ZH-CN
face=System>'</FONT><FONT lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN
face=System>direct</FONT><FONT lang=ZH-CN face=宋体>中。</FONT></P><FONT lang=ZH-CN
face=宋体>
<P align=justify>异或指令:</P></FONT>
<P align=justify><FONT lang=ZH-CN face=System>XRL A,Rn</FONT><FONT lang=ZH-CN
face=宋体> </FONT><FONT lang=ZH-CN face=System>;A</FONT><FONT lang=ZH-CN
face=宋体>和</FONT><FONT lang=ZH-CN face=System>Rn</FONT><FONT lang=ZH-CN
face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>异或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT lang=ZH-CN
face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT lang=ZH-CN
face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>XRL A,direct ;A</FONT><FONT
lang=ZH-CN face=宋体>和</FONT><FONT lang=ZH-CN face=System>direct</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>异或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>XRL A,@Ri ;A</FONT><FONT
lang=ZH-CN face=宋体>和间址寻址单元</FONT><FONT lang=ZH-CN face=System>@Ri</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>异或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>XRL A,#data ;A</FONT><FONT
lang=ZH-CN face=宋体>和立即数</FONT><FONT lang=ZH-CN face=System>data</FONT><FONT
lang=ZH-CN face=宋体>按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>异或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>XRL direct,A ;direct</FONT><FONT
lang=ZH-CN face=宋体>中值和</FONT><FONT lang=ZH-CN face=System>A</FONT><FONT
lang=ZH-CN face=宋体>中的值按位</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>异或</FONT><FONT lang=ZH-CN face=System>'</FONT><FONT
lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN face=System>direct</FONT><FONT
lang=ZH-CN face=宋体>中</FONT></P>
<P align=justify><FONT lang=ZH-CN face=System>XRL direct,#data
;direct</FONT><FONT lang=ZH-CN face=宋体>中的值和立即数</FONT><FONT lang=ZH-CN
face=System>data</FONT><FONT lang=ZH-CN face=宋体>按位</FONT><FONT lang=ZH-CN
face=System>'</FONT><FONT lang=ZH-CN face=宋体>异或</FONT><FONT lang=ZH-CN
face=System>'</FONT><FONT lang=ZH-CN face=宋体>,结果送入</FONT><FONT lang=ZH-CN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -