微机原理与接口技术第3章_2.ppt

微机原理与接口技术第3章_2.ppt

ID:51499400

大小:579.50 KB

页数:100页

时间:2020-03-25

微机原理与接口技术第3章_2.ppt_第1页
微机原理与接口技术第3章_2.ppt_第2页
微机原理与接口技术第3章_2.ppt_第3页
微机原理与接口技术第3章_2.ppt_第4页
微机原理与接口技术第3章_2.ppt_第5页
资源描述:

《微机原理与接口技术第3章_2.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、3.4.2算术运算指令(Arithmetic)算术运算指令内容:8086/8088提供加、减、乘、除等六种基本算术操作(一)加法指令(Addition)(二)减法指令(Subtraction)(三)乘法指令(Multiplication)(四)除法指令(Division)(五)符号扩展指令(六)十进制调整指令特点:大部分都影响标志位,不同指令影响不同:(1)加、减法指令影响SF,ZF,AF,PF,CF,OF;(2)加1和减1指令不影响CF;(3)乘法指令影响CF,OF;(4)除法指令使大部分标志位的状态不确定;(5)对BCD码调整指令对标志位的影响不同;(6)转换指令对标志位无影响都

2、可以用于字节、字的运算;双操作数指令除源为立即数外,其余必须有一个操作数为寄存器;单操作数指令不能为立即数。8086具有5种加法操作指令:1、ADD(Addition)加法指令2、ADC(Addwithcarry)带进位加法指令3、INC(Incrementby1)加1指令4、AAA(ASCIIadjustforaddition)加法ASCII调整指令5、DAA(Decimaladjustforaddition)加法十进制调整指令(一)加法指令(Addition)指令格式:ADDdst,src;(dst)(dst)+(src)Src:立即数,寄存器,存储器。dst:寄存器,存储器。

3、例:ADDCL,10;寄存器+立即数ADDDX,SI;寄存器+寄存器ADDAX,MEM;寄存器+存储器ADDDATA[BX],AL;存储器+寄存器ADDBYTEPTRALPHA[DI],30H;存储器+立即数1、ADD(Addition)加法指令格式:ADCdst,src;(dst)←(dst)+(src)+CFCF:进位标志CF的现行值(上条指令CF值)特点:与ADD同。用途:主要用于多字节运算中。例:ADCCX,300;寄存器+立即数+CFADCAL,BL;寄存器+寄存器+CFADCDX,COUNT[SI];寄存器+存储器+CFADCBLOCK[DI],BX;存储器+寄存器+CF

4、ADCBYTEPTRMEM,6;存储器+立即数+CF2、ADC(Addwithcarry)带进位加法指令应用举例:计算两个多字节数相加3B74AC60F8H+20D59E36C1H=?两个多字节数存放在:DATA1,DATA2开始的单元。流程图多字节数内存存放程序:MOVCX,5MOVSI,0;清SICLC;清CFLOOPER:MOVAL,DATA2[SI]ADCDATA1[SI],ALINCSI;(SI)+1(SI)DECCX;(CX)-1(CX)JNZLOOPER;(CX)0转HLT;停机特点:可以进行8位、16位的无符号数和带符号数的加法运算;源操作数和目标操作数不能同时

5、为存储器,不能为段寄存器;指令影响标志位的情况:OF=1,8位带符号数相加,和超出范围(-128~+127),16位带符号数相加,和超出范围(-32768~+32767);CF=1,8位无符号数相加,和超过255,16位无符号数相加,和超过65535。其他条件标志(SF,AF,PF,ZF)根据定义设定。例:MOVAL,7EH;(AL)=7EHMOVBL,5BH;(BL)=5BHADDAL,BL;(AL)=7EH+5BH=D9H影响标志位的情况:SF=1,结果最高位=1ZF=0,结果不等于0AF=1,D3位向D4有进位PF=0,”1”的个数为奇数CF=0,无进位OF=1,和超过+127

6、(两个正数相加,结果为负;反之亦是)分析两标志位(1)什么叫溢出?什么叫进位?(2)有进位就有溢出,没有进位就没有溢出?(1)解答:溢出------通常是指带符号数的补码溢出。补码运算能表示范围为:-2n-1~+2n+1–1,如果运算结果超出该范围,叫补码溢出,此时OF=1,故用OF标志判断带符号数运算是否超范围(结果溢出)。进位------是指运算结果的最高位向更高位的进位。有进位,CF=1;无进位,CF=0,用CF标志判断无符号数运算是否超范围(结果溢出)。问题思考:(2)有进位就有溢出,没有进位就没有溢出?结论:有进位不一定有溢出,没有进位不一定没有溢出。以8位二进制数为例分析

7、一下数的溢出与进位情况:下面分4种情况加以讨论:(1)带符号数和无符号数都不溢出(2)无符号数溢出(3)带符号数溢出(4)带符号数和无符号数都溢出(1)带符号数和无符号数都不溢出。(2)无符号数溢出二进制数看作无符号数看作带符号数0000011111111011+000000107251+258+7-5++2相加标志CF=1,OF=0CF=1OF=0溢出无符号数溢出溢出结果应为2,错不溢出异号数相加不可能有溢出CF=1(3)带符号数溢出(4)带符号数和无符

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

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

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