- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机原理报告2
《微机原理实验报告二》
实验( 二 )名称: 运算类程序设计编程训练
一、实验目的
1.熟练掌握运算类指令及其对各种状态标志位的影响
2.掌握运算类程序的设计及调试方法
3.熟悉BCD码的基本知识
4.掌握BCD码调整指令的使用方法
5.熟悉数码的补码表示
6.熟悉无符号数和有符号数乘法和除法指令的使用
7.掌握符号位扩展指令的使用
二、实验涉及的主要知识点:
1.二进制加法基本指令
(1)ADD指令 格式:ADD DST,SRC
(2)ADC指令 格式:ADC DST,SRC
2.二进制减法基本指令
(1)SUB指令 格式:SUB DST,SRC
(2)SBB指令 格式:ADC DST,SRC
3.BCD码的介绍
BCD码是一种用二进制编码的十进制数,又称二—十进制数。它使用4位二进制数表示一个十进制数码的,由于这4位二进制数的权为8421,所以BCD码又称8421码。在IBM PC机中,表示十进制的BCD码可以用压缩的BCD码和非压缩的BCD码两种格式表示。
4.BCD码的调整指令
(1)压缩的BCD码调整指令
DAA加法的十进制调整指令
DAS减法的十进制调整指令
(2)非压缩的BCD码调整指令
AAA加法的ASCⅡ调整指令
AAS减法的ASCⅡ调整指令
AAM乘法的非压缩BCD码调整指令
AAD除法的非压缩BCD码调整指令
5.数的补码表示
6.乘法指令介绍、
(1)MUL无符号数乘法指令 格式:MUL SRC
(2)IMUL带符号数乘法指令 格式:IMUL SRC
7.除法指令介绍
(1)DIV无符号数除法指令 格式:DIV SRC
(2)IDIV带符号数除法指令 格式:IDIV SRC
8.符号扩展指令
(1)CBW自己转换为字指令 格式:CBW
(2)CWD字转换为双字指令 格式:CWD
三、实验内容:
1.将两个多位十进制数相加,并显示加数、被加数、和。要求被加数和加数均以ASCⅡ码形式存放在以DATA1和DATA2内存单元中,结果送回DATA1处
2.实现十进制数的乘法,被乘数和乘数均以ASCⅡ码形式存放在内存中,乘数、被乘数、积均在屏幕上显示出来
3.完成程序的编辑与调试,分析实验现象
四、程序流程图:
五、程序代码:
SHOW MACRO B
MOV AH,02H
MOV DL,B
INT 21H
ENDM
DATA SEGMENT
DATA1 DB 32H,39H,30H,35H,34H
DATA2 DB 33H
RESULT DB 6 DUP(00H)
DATA ENDS
STACK SEGMENT
STA DB 20 DUP(?)
TOP EQU LENGTH STA
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
MOV AX,TOP
MOV SP,AX
MOV SI,OFFSET DATA1
MOV CL,5
SHOW 20H
CALL DISPL
SHOW 0DH
SHOW 0AH
SHOW 2AH
MOV SI,OFFSET DATA2
MOV BL,[SI]
AND BL
MOV CL,1
CALL DISPL
SHOW 0DH
SHOW 0AH
MOV CL,7
S1: SHOW 2DH
LOOP S1
SHOW 0DH
SHOW 0AH
MOV SI,OFFSET DATA1
MOV DI,OFFSET RESULT
MOV CX,05
LOOP1:MOV AL,[SI]
AND AL
INC SI
MUL BL
AAM
ADD AH,[DI]
AAA
MOV [DI],AH
INC DI
MOV [DI],AL
LOOP LOOP1
MOV CX,06
MOV SI,OFFSET RESULT
LOP: MOV DL,[SI]
ADD DL,30H
MOV [SI],DL
INC SI
LOOP LOP
MOV SI,OFFSET RESULT
MOV CL,6
CALL DISPL
MOV AX,4C00H
INT 21H
DISPL PROC NEAR
SD1:SHOW [SI]
INC SI
LOOP SD1
RET
DISPL ENDP
CODE ENDS
END START
六、程序分析及实验现象:
1.(1)实验步骤
①根据实验任务,思考相关算法,画出程序流程图
②利
文档评论(0)