- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编与接口设计报告书乘法运算
汇编语言与接口技术
设计题目:完成两个三位十进制数相乘,并将结果送到屏幕显示
学 院:计算机科学与技术学院
专 业:信息安全
班 级:
学 号:
学生姓名:
指导教师:
组 名:
同组组员
2014年12月30日
目 录
一、设计题目及设计目标 - 3 -
1.1设计题目 - 3 -
1.2设计目标 - 3 -
二、系统分析和设计 - 3 -
2.1 - 3 -
2.1.1 算法思想 - 3 -
2 主要技术 - 5 -
3 主程序流程图 - 5 -
2.2过程功能描述 - 6 -
2.1 整数 - 6 -
2.2.2 结果输出 - 7 -
2.2.3 INPUT(输入及纠错算法) - 8 -
2.4 DIVDW(防溢出除法) - 9 -
3过程详细 - 10 -
2.3.1整数 - 10 -
2.3.2结果输出 - 10 -
2.3.3 INPUT(输入及纠错算法) - 11 -
4 DIVDW(防溢出除法) - 12 -
方法 - 12 -
3.1 - 12 -
3.2上机编译与调试 - 16 -
3.2.1编辑源程序 - 16 -
3.2.2汇编源程序 - 16 -
3.2.3产生.EXE文件 - 17 -
3.3.4程序的调试 - 17 -
四、程序运行与测试 - 18 -
4.1运行结果 - 18 -
4.1.1提示用户输入第一个数字 - 18 -
4.1.2提示用户输入第个数字 - 18 -
4.1.3 - 19 -
4.1.4退出程序 - 19 -
4.2检错测试 - 19 -
- 20 -
参考文献 - 21 -
一、设计题目及设计目标
1.1设计题目
设计两个三位十进制数相乘,并将结果送到屏幕显示。
1.2设计目标
1.有信息提示输入两个三位十进制数的值。
2.能从键盘接收相应的值。
3.经计算后,将结果显示在屏幕上。
4.按 Q 键退出程序。
二、系统分析和设计
2.1
1、输出提示字符串。
3、判断输入是否正确。
4、将输入的字符串转换为16进制数。
5、将两个16进制数相乘得到运算结果。
6、将运算结果转换成字符串存入缓存区。
7、输出结果。
8、询问用户是否退出程序
思想
1、利用DOS功能调用输出提示字符串。
LEA DX,T1
INT 21H
2、利用DOS功能调用将输入的字符串放入定义好的缓冲区。
LEA DX,BUF
MOV AH,0AH
INT 21H
3、利用缓冲区的第二个空间中的数字判断输入的长度是否小于等于3。
CMP [BX+1],03H
JA ERROR
4、将缓冲区中的有效字符和‘0’、’9’比较大小,判断输入是否为纯数字。
JB ERROR
CMP [BX],9
JA ERROR
INC BX
LOOP LOOP1
5、将输入的字符串转换为16进制数。
LOOP2:SUB [BX],0
PUSH AX
MUL [BX]
ADD DX,AX
POP AX
MOV [BX],0AH
MUL [BX]
DEC BX
LOOP LOOP2
6、将两个16进制数相乘得到运算结果。
MOV AX,DX
MUL TMP
7、将运算结果多次和10相除(并把余数转换为
DIVDW PROC;双字除法,防止溢出
PUSH BX
PUSH AX
MOV AX,DX
MOV DX,0
DIV CX
MOV BX,AX
POP AX
DIV CX
MOV CX,DX
MOV DX,BX
POP BX
RET
DIVDW ENDP
END
L1:
POP DX ;把栈中的结果放入输出缓存区
MOV [BX],DL
INC BX
LOOP L1
MOV [BX],0DH
INC BX
MOV [BX],0AH
INC DX
MOV [BX],24H
8、利用DOS功能调用输出结果。
LEA DX,NUM
MOV AH,09H
INT 21H
9、判断输入是否为
MOV AH,01H
INT 21h
CMP AL,Q
JE ENDPR
CMP AL,q
JE ENDPR
2.1.2 主要技术
(1)01H号功能
功能:等待从标准设备输入一个字符,将该字符的ASCII码送给AL,并在标准输出设备上显示该字符。
入口参数:无。
出口参数:AL的内容为输入字符的ASCII码。
(2)09H号功能
功能:在屏幕上显示字符串。
入口参数:无。
出口参数:DX存放字符串的偏移地址
(3)0AH号功能
功能:将输入的字符串放入指定的缓冲区
入口参数:无。
文档评论(0)