单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt

单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt

ID:50471630

大小:193.50 KB

页数:14页

时间:2020-03-09

单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt_第1页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt_第2页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt_第3页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt_第4页
单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt_第5页
资源描述:

《单片机原理及应用 教学课件 作者 孙康岭 刘永海 主编算术运算类指令.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、PSW寄存器Cy:进位标志位AC:半进位标志位F0:供用户使用的标志位OV:溢出标志位P:奇偶标志位:A中1的个数为奇数,P=1,否则P=0。RS1RS0:工作寄存器组选择位00区0(地址:00H~07H)01区1(地址:08H~0FH)10区2(地址:10H~17H)11区3(地址:18H~1FH)CyACF0RS1RS0OV—P3.3.2算术运算类指令1.不带进位加法指令(Addtion)2.带进位加法指令3.带借位减法指令(Subtraction)4.加1指令(Increase)5.减1指令(Decrease)6.十进制调整指令7.乘法指令(Multiplication)8.除法指令(D

2、ivision)1.不带进位的加法指令ADD(4条)ADDA,Rn;A(A)+(Rn)ADDA,@Ri;A(A)+((Ri))ADDA,direct;A(A)+(direct)ADDA,#data;A(A)+dataADD指令将影响PSW的CY、AC、OV和P标志。CY:和的D7位有进位时,(CY)=1;无进位时,(CY)=0。用于判断无符号运算是否溢出或进行多字节的加法运算。OV:和的D7、D6位的进位相异或,结果存放在OV中。(OV)=1表示发生溢出,(OV)=0表示结果正常。用于判断8位有符号数相加后是否溢出(>127或<-128)。AC:和的D3位有进位时,(AC)=1;无进位

3、时,(AC)=0。P:当A中二进制数1的个数为奇数时,(P)=1;为偶数时(P)=0。例:MOVA,#7AHMOVR0,#65HADDA,R001111010A+)01100101R011011111ACY=0;OV=1;AC=0;P=1。例:若(A)=86H,(30H)=8DH,则执行指令“ADDA,30H”后(A)=13H,标志位:(CY)=1(AC)=1(OV)=1(P)=0。若把86H和8DH看作无符号数,和为113H,则表示结果正确;若把86H和8DH看作带符号数(都为负数),结果13H却为正数,则有两个负数相加得正数的错误,CPU通过让(OV)=1(溢出,D7位有进位,D6位无进位

4、)指出该错误。2.带进位加法指令ADDC(4条)ADDCA,Rn;A←(A)+(Rn)+(Cy)ADDCA,@Ri;A←(A)+((Ri))+(Cy)ADDCA,direct;A←(A)+(direct)+(Cy)ADDCA,#data;A←(A)+#data+(Cy)对标志位的影响与ADD相同。注意:这里所加的(CY)的内容,是指令执行前已存在的进位标志的内容,而不是执行该指令过程中产生的进位。ADDC可用于多字节运算的编程。例:有两个16位数,低8位分别存于20H和30H之中,高八位分别存于21H和31H中。求和,和的低八位送40H,高8位送41H。程序段如下:MOVA,20HADDA,3

5、0H;低8位相加MOV40H,A;存和的低8位MOVA,21HADDCA,31H;高8位相加,带低八位相加的进位MOV41H,A;存和的高8位3.带借位减法指令(Subtraction)(4条)SUBBA,Rn;A←(A)-(Rn)-(Cy)SUBBA,@Ri;A←(A)-((Ri))-(Cy)SUBBA,direct;A←(A)-(direct)-(Cy)SUBBA,#data;A←(A)-#data-(Cy)功能:将累加器A的内容与源操作数及进位标志相减,结果送回累加器A中。在执行减法过程中,对标志位的影响:CY:如果D7有借位,则借位标志CY置“1”,否则清“0”;AC:如果D3有借位,

6、则辅助借位标志AC置“1”,否则清“0”;OV:如D6有借位而位D7没有借位,或D7有借位而D6没有借位,则溢出标志OV置“1”,否则清“0”。(即把D7、D6位的借位相异或产生OV)P:当A中二进制数1的个数为奇数时,(P)=1;为偶数时(P)=0。注意:这里所减的借位标志CY的内容,是指令执行前已存在的借位标志的内容,而不是执行该指令过程中产生的借位。若要进行不带借位的减法操作,则必须先将CY清“0”。例:若(A)=C9H,(R2)=54H,CY=1,执行指令SUBBA,R2后,结果:(A)=74H,(R2)=54H,标志位(CY)=0,(AC)=0,(OV)=1,(P)=0。如果看作是无

7、符号数相减,结果正确;如果是带符号数相减,则得出负数减正数为正数的错误,OV=1指出了这个错误。4.加1指令(5条)INCA;A←(A)+1INCRn;Rn←(Rn)+1INCdirect;direct←(direct)+1INC@Ri;(Ri)←((Ri))+1INCDPTR;DPTR←(DPTR)+1这组指令的功能是:将指令中所指出操作数的内容加1。对标志位不产生影响例如:若(A)=0FFH,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。