第08讲 算术运算类指令99905

第08讲 算术运算类指令99905

ID:15309238

大小:54.00 KB

页数:3页

时间:2018-08-02

第08讲  算术运算类指令99905_第1页
第08讲  算术运算类指令99905_第2页
第08讲  算术运算类指令99905_第3页
资源描述:

《第08讲 算术运算类指令99905》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第八讲算术运算类指令教学方法:讲授法授课时数:2学时教学目的:1、熟悉数据运算类指令的操作方式特点2、理解二-十进制调整指令的含义3、熟练掌握加法指令教学重点:加法、减法指令教学难点:二-十进制调整指令教学环节:组织教学:考勤复习提问:direct、@Ri、@DPTR、Rn、#data、(x)、((x))的含义?新授课:§3-3算术运算类指令包括:加、减、乘、除;加一、减一。一、加法指令ADDA,Rn;(A)(A)+(Rn)以下类同。ADDA,directADDA,@RiADDA,#data无符号数相加时:若C=1,说明有溢出(其值>255)。带符号数相

2、加时:若OV=D7c⊕D6c=1,说明有溢出。ADDCA,Rn;(A)(A)+(Rn)+(C),以下类同。ADDCA,directADDCA,@RiADDCA,#data上述四条指令多用于多字节数相加。INCA;(A)(A)+1,以下类同。INCRnINCdirectINC@RiINCDPTR例1、设(R0)=7FH;(7EH)=40H执行:INC@R0INCR0INC@R0后,(R0)=7FH;(7EH)=00H;(7FH)=41H.DAA;二——十进制调整指令。执行过程中,CPU能根据加法运算后,累加器中的值和PSW中的AC及C标志位的状况自动选择一

3、个修正值(00H、06H、60H、66H)与原运算结果相加,进行二——十进制调整。选择修正值的规则:(A3~0)>9时或(AC)=1时,(A3~0)(A3~0)+6(A7~4)>9或(C)=1时,(A7~4)(A7~4)+6例2、设(A)=56H为56的压缩的BCD码数,(R3)=67H,(CY)=1执行ADDCA,R3DAA结果为:124注意:1)DA指令只能跟在加法指令后面使用;2)调整前参与运算的两数是BCD码数;3)DA指令不能与减法指令配对使用,但可以实现对A中压缩BCD减一操作。例3、设(A)=30H(压缩BCD码数),执行:ADDA,#99

4、HDAA后,便实现了30-1=29的操作。例4、两个4位BCD码相加,一个存放在(31H)(30H);另一个存放在(33H)(32H);和数拟回存在(31H)(30H)中,试编程实现之。解:MOVR0,#30HMOVR1,#32HMOVA,@R0ADDA,@R1DAAMOV@R0,AINCR0INCR1MOVA,@R0ADDCA,@R1DAAMOV@R0,A二、减法指令SUBBA,Rn;(A)(A)-(Rn)-(C),以下类同。SUBBA,directSUBBA,@RiSUBBA,#data注意:减法之前先清零C。DECA;(A)(A)-1,以下类同。D

5、ECRnDEC@RiDECdirect例5、设(R0)=7FH,在内RAM中,(7EH)=00H,(7FH)=40H执行:DEC@R0DECR0DEC@R0结果为:(R0)=7EH,(7EH)=0FFH,(7FH)=3FH。三、乘法和除法指令乘法:MULAB;(A)×(B),积的低8位在A中,积的高8位在B中;C总为0。除法:DIVAB;(A)÷(B),商在A中,余数在B中。若(B)=0,则结果不定,(OV)=1,(C)=0。例6、试将A中的二进制数转换为3位BCD码,其中,百位数存放于31H单元,十位数和个位数压缩后存于30H单元中。解;MOVB,#1

6、00DIVABMOV31H,AMOVA,#10XCHA,BDIVABSWAPAADDA,BMOV30H,A小结:算术运算类指令都有哪些类型?

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

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

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