- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
四川大学_微机原理与接口技术实验报告_冒泡法
《微机原理与接口技术实验报告》
学 院:
学 号:
姓 名:
一、实验目的:
1.理解各种指令的功能。
2.进一步学习程序的调试。
二、实验内容:
1.编制程序,对这组数进行排序,并输出原数据及排序后数据;
2.利用DEBUG调试工具,用D0命令,查看排序前后,内存数据的变化;
3. 去掉最大和最小的两个值,求出其余值的平均值,并输出最大值,最小值和平均值;
4. 用学过的压栈PUSH和出栈POP指令,将平均值按位逐个输出(即输出263);
5将平均值263转化为二进制串,并将这组二进制串输出。
6.所有数据输出前要用字符串的输出指令,进行输出提示(如:zui da zhi shi : 300等),所有数据结果能清晰地显示在屏幕上。
三、程序流程图:
N
N Y
Y
四、程序清单:
DATAS SEGMENT
VAR DW 300,250,280,240,260
D1 DB 0DH,YUAN SHU JU,0DH,0AH,$
D2 DB 0DH,0AH,PAI XU HOU,0DH,0AH,$
D3 DB 0DH,0AH,ZUI DA ZHI,0DH,0AH,$
D4 DB 0DH,0AH,ZUI XIAO ZHI,0DH,0AH,$
D5 DB 0DH,0AH,PING JUN ZHI,0DH,0AH,$
D6 DB 0DH,0AH,AN WEI SHU CHU,0DH,0AH,$
D7 DB 0DH,0AH,ER JIN ZHI SHU CHU,0DH,0AH,$
DATAS ENDS
STACKS SEGMENT
S DB 100 DUP(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
B: MOV AX,DATAS
MOV DS,AX
MOV CX,5
MOV DX,OFFSET D1 ;输出‘yuan shu ju’
MOV AH,9
INT 21H
MOV SI,0
CALL OUTP ;调用输出
MOV DX,1
AG: CALL SUBP ;调用冒泡法
INC DX
LOOP AG
MOV CX,5
MOV DX,OFFSET D2 ;输出‘PAI XU HOU’
MOV AH,9
INT 21H
MOV SI,0
CALL OUTP ;调用输出,输出排序后数据
MOV DX,OFFSET D3 ;输出‘ZUI DA ZHI’
MOV AH,9
INT 21H
MOV SI,8
MOV BX,[SI]
CALL OUTP2 ;输出最大值
MOV DX,OFFSET D4 ;输出‘ZUI XIAO ZHI’
MOV AH,9
INT 21H
MOV SI,0
MOV BX,[SI]
CALL OUTP2
MOV DX,OFFSET D5 ;输出‘PING JUN ZHI’
MOV AH,9
INT 21H
MOV BX,0 ;求平均值
MOV DX,0
ADD BX,[SI+2]
ADD BX,[SI+4]
ADD BX,[SI+6]
MOV AX,BX
MOV BX,3
DIV BX
MOV BX,AX
PUSH BX ;BX入栈保护
CALL OUTP2 ;输出平均值
MOV DX,OFFSET D7 ;输出‘ER JIN ZHI SHU CHU’
MOV AH,9
INT 21H
文档评论(0)