- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
微原实验报告
第PAGE2页
一、实验名称:字符串排序
二、实验目的:
⑴学习利用系统功能调用的“INT21H”进行字符的输入、字符串的显示方法,熟悉排序相关指令及方法。
⑵掌握汇编语言的编写、编译、连接及运行方法。
三、实验内容:
①利用INT21H的1号功能,从键盘输入任意长度的字符串,以回车符结束。
②将输入的字符串存放在数据段中。
③对输入的字符串按ASCⅡ码从小到大排序(ASCⅡ码小者占低地址存放)。
④将排好序的字符串利用INT21H的9号功能显示在微机屏幕上。
四、程序流程图:
分配各段
分配各段
调用输入程序,输入并存储一个字符
调用输入程序,输入并存储一个字符
输入是否为回车键
输入是否为回车键
NO
YES
冒泡法对存储单元中的内容排序
冒泡法对存储单元中的内容排序
使用INT21H的9号功能,将排好序的字符串输出
使用INT21H的9号功能,将排好序的字符串输出
返回DOS
返回DOS
五、结论:
六、实验心得:
通过实验,首先,我进一步理解学习了冒泡法排序的具体过程:冒泡法的外层循环次数等于其排序总数减一,每层内循环次数等于外循环总数减去已执行的次数。第二,在编写程序时,如若程序太长,最好将一段反复使用的程序段编成子程序,在主程序中反复调用即可。第三,在使用INT21H的各种功能时,要注意将功能号值付给AH,并需正确使用入口、出口参数。最后,堆栈段、数据段使用时要特别注意,堆栈段必须重新定义,程序中使用数据段时也要对数据段进行重新定义,否则程序将产生错误。
附:程序清单
STACKSEGMENTSTACK
DB100DUP(?)
STACKENDS
DATASEGMENT
XDB100DUP(?)
DATAENDS
CODESEGMENT
ASSUMECS:CODE,DS:DATA,SS:STACK
MAINPROC
MOVAX,DATA
MOVDS,AX
MOVSI,OFFSETX
CALLINPUT
SUBSI,2
MOVBX,SI
NEXT3:MOVCX,BX
MOVSI,OFFSETX
NEXT2:MOVAL,[SI]
CMPAL,[SI+1]
JBENEXT1
XCHGAL,[SI+1]
MOV[SI],AL
NEXT1:INCSI
LOOPNEXT2
DECBX
JNZNEXT3
MOVDX,OFFSETX
MOVAH,9
INT21H
MOVAH,4CH
INT21H
MAINENDP
INPUTPROC
START:MOVAH,1
INT21H
MOV[SI],AL
INCSI
CMPAL,0DH
JNZSTART
MOVBYTEPTR[SI-1],$
RET
INPUTENDP
CODEENDS
ENDMAIN
您可能关注的文档
- 青岛版六年级下册数学期末测试卷含答案【典型题】.doc
- 人防地下室裂缝修补专项方案.doc
- 工期延期说明.doc
- 继电保护课程设计_9.doc
- 设计实习心得体会范文.doc
- 社团的活动总结范文.doc
- 28日-回首过去作文.doc
- 安全风险及文明施工监理实施细则精选.doc
- 思政课教案-精品文档.doc
- 2024话务员的工作计划样本(7篇).doc
- 计及电动汽车移动储能动态电价的微电网优化调度研究及解决方案.pdf
- 浅谈电动汽车充电桩绝缘智能化自检装置的设计与应用 .pdf
- 浅谈电动汽车公共充电桩布局方案评价方法.pdf
- 浅谈基于弹性响应的电动汽车快充电价定价策略 汽车充电桩有序充电.pdf
- 浅谈光储充一体化社区的有序充电策略及解决方案.pdf
- 晚期肾透明细胞癌系统性治疗中国专家共识(2024版).pptx
- 中国膀胱癌保膀胱治疗多学科诊治协作共识(2022版).pptx
- 成人心血管外科手术体外循环患者血液管理指南.pptx
- 下尿路修复重建移植物应用规范中国专家共识.pptx
- 中国儿童急性非静脉曲张性上消化道出血诊治指南(2024).pptx
文档评论(0)