📄 dpjjx13.htm
字号:
<P ALIGN="JUSTIFY"><LI>除法指令</LI><p></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">DIV		AB</P>
</FONT><P ALIGN="JUSTIFY"><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>此指令的功能是将</font><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中的</FONT><FONT SIZE=3>8</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>位无符号数除了</FONT><FONT SIZE=3>B</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中的</FONT><FONT SIZE=3>8</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>位无符号数(</FONT><FONT SIZE=3>A/B</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)。除法一般会出现小数,但计算机中可没法直接表达小数,它用的是我们小学生还没接触到小数时用的商和余数的概念,如</FONT><FONT SIZE=3>13/5</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,其商是</FONT><FONT SIZE=3>2</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,余数是</FONT><FONT SIZE=3>3</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。除了以后,商放在</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中,余数放在</FONT><FONT SIZE=3>B</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中。</FONT><FONT SIZE=3>CY</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>和</FONT><FONT SIZE=3>OV</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>都是</FONT><FONT SIZE=3>0</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。如果在做除法前</FONT><FONT SIZE=3>B</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中的值是</FONT><FONT SIZE=3>00H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,也就是除数为</FONT><FONT SIZE=3>0</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,那么</FONT><FONT SIZE=3>0V=1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。</font></P><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>
<P ALIGN="JUSTIFY"></FONT><LI><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>加</font><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>指令</font></LI><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><p></P>
</FONT><FONT SIZE=3><P ALIGN="JUSTIFY">INC		A</P>
<P ALIGN="JUSTIFY">INC		Rn</P>
<P ALIGN="JUSTIFY">INC		direct</P>
<P ALIGN="JUSTIFY">INC		@Ri</P>
<P ALIGN="JUSTIFY">INC		DPTR</P>
</FONT><P ALIGN="JUSTIFY"><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>用途很简单,就是将后面目标中的值加</font><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。例:(</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=12H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,(</FONT><FONT SIZE=3>R0</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=33H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,(</FONT><FONT SIZE=3>21H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=32H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,(</FONT><FONT SIZE=3>34H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=22H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>DPTR=1234H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。执行下面的指令:</font></P>
<P ALIGN="JUSTIFY"><FONT SIZE=3>INC	A </font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>(</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=13H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>INC	R2 </font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>(</FONT><FONT SIZE=3>R0</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=34H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>INC	21H </font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>(</FONT><FONT SIZE=3>21H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=33H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>INC	@R0 </font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>(</FONT><FONT SIZE=3>34H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=23H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>INC	DPTR		 </font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>(</FONT><FONT SIZE=3> DPTR</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=1235H</font></P>
<FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY">后结果如上所示。</P>
</FONT><P ALIGN="JUSTIFY"><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>说明:从结果上看</font><FONT SIZE=3>INC	A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>和</FONT><FONT SIZE=3>ADD A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>差不多,但</FONT><FONT SIZE=3>INC	A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>是单字节,单周期指令,而</FONT><FONT SIZE=3>ADD #1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>则是双字节,双周期指令,而且</FONT><FONT SIZE=3>INC A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>不会影响</FONT><FONT SIZE=3>PSW</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>位,如(</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=0FFH</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>INC A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>后(</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=00H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,而</FONT><FONT SIZE=3>CY</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>依然保持不变。如果是</FONT><FONT SIZE=3>ADD A </FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,则(</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>)</FONT><FONT SIZE=3>=00H</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,而</FONT><FONT SIZE=3>CY</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>一定是</FONT><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>。因此加</FONT><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>指令并不适合做加法,事实上它主要是用来做计数、地址增加等用途。另外,加法类指令都是以</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>为核心的��其中一个数必须放在</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中,而运算结果也必须放在</FONT><FONT SIZE=3>A</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>中,而加</FONT><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>类指令的对象则广泛得多,可以是寄存器、内存地址、间址寻址的地址等等。</font></P><P ALIGN="JUSTIFY">
<FONT FACE="宋体" LANG="ZH-CN" SIZE=3>减</font><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>指令</font></P><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>
<P ALIGN="JUSTIFY"></FONT><LI><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>减</font><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>指令</font></LI><FONT FACE="宋体" LANG="ZH-CN" SIZE=3><p></P></font></OL>
<FONT SIZE=3><P ALIGN="JUSTIFY">DEC		A</P></FONT><DIR><FONT SIZE=3>
<P ALIGN="JUSTIFY">DEC		RN</P>
<P ALIGN="JUSTIFY">DEC		direct</P>
<P ALIGN="JUSTIFY">DEC		@Ri</P>
</font><P ALIGN="JUSTIFY"><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>与加</font><FONT SIZE=3>1</FONT><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>指令类似,就不多说了。</font></P><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>
<P ALIGN="JUSTIFY">综合练习:</P>
</FONT><P ALIGN="JUSTIFY"><FONT SIZE=3>MOV		A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#12H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>MOV		R0</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#24H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>MOV		21H</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#56H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>ADD		A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#12H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>MOV		DPTR</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#4316H</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>ADD		A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>DPH</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>ADD		A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>R0</font></P><FONT SIZE=3>
<P ALIGN="JUSTIFY">CLR		C</P>
</FONT><P ALIGN="JUSTIFY"><FONT SIZE=3>SUBB	A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>DPL</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>SUBB	A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#25H</font></P><FONT SIZE=3>
<P ALIGN="JUSTIFY">INC		A</P>
<P ALIGN="JUSTIFY">SETB		C</P>
</FONT><P ALIGN="JUSTIFY"><FONT SIZE=3>ADDC	A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>21H</font></P><FONT SIZE=3>
<P ALIGN="JUSTIFY">INC		R0</P>
</FONT><P ALIGN="JUSTIFY"><FONT SIZE=3>SUBB	A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>R0</font></P><P ALIGN="JUSTIFY">
<FONT SIZE=3>MOV		24H</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>#16H</font></P><FONT SIZE=3>
<P ALIGN="JUSTIFY">CLR		C</P>
</FONT><P ALIGN="JUSTIFY"><FONT SIZE=3>ADD		A</font><FONT FACE="宋体" LANG="ZH-CN" SIZE=3>,</FONT><FONT SIZE=3>@R0</font></P>
<FONT FACE="宋体" LANG="ZH-CN" SIZE=3><P ALIGN="JUSTIFY">先写出每步运行结果,然后将以上题目建入,并在软件仿真中运行,观察寄存器及有关单元的内容的变化,是否与自已的预想结果相同。</P></font></DIR>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -