微机原理实验五循环结构的程序设计:排序程序设计实验

微机原理实验五循环结构的程序设计:排序程序设计实验

ID:8485866

大小:41.00 KB

页数:11页

时间:2018-03-29

微机原理实验五循环结构的程序设计:排序程序设计实验_第1页
微机原理实验五循环结构的程序设计:排序程序设计实验_第2页
微机原理实验五循环结构的程序设计:排序程序设计实验_第3页
微机原理实验五循环结构的程序设计:排序程序设计实验_第4页
微机原理实验五循环结构的程序设计:排序程序设计实验_第5页
资源描述:

《微机原理实验五循环结构的程序设计:排序程序设计实验》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实验五循环结构的程序设计:排序程序设计实验1、实验目的(1)掌握接收键盘数据的方法。(2)掌握循环结构的程序设计和排序程序设计的方法。(3)进一步熟练在PC上建立、汇编、链接、调试和运行汇编语言程序的过程。2、实验内容用汇编语言编写学生成绩统计程序:键盘输入学生成绩到SCORE中(0<=分数<=100,设有10个学生成绩分别是56,69,84,82,73,88,99,63,100,80)。编程将它们由大到小排序,存回到原来的SCORE变量中;并统计低于60分、60~69、70~79、80~89、90~99及100分的人数,分别存放在S5、S6、S7、S8、S9、S10单元中。3

2、、实验及报告要求:(1)要求画出完整的程序流程图。(2)根据流程图,编写完整的汇编代码源文件,要求写出所有伪指令和指令的注释;(3)编译、连接生成可执行文件,调试该可执行文件。(4)写出完整的实验报告,特别是“实验结果”与“实验总结体会”部分,是评分的主要依据。(5)实验总结中要求结合实验中的经验、教训或体会对汇编语言格式、调试方法、汇编指令及汇编语言编程方法、微机原理学习方法作出总结。4、思考题:如何从屏幕输出结果?开始统计人数的程序流程图:从score中取出第SI数,DH赋值为10S5加1S<60DH=0YNN60<=s<707YNS7加1S6加170<=s<80YN80<

3、=s<90S8加1YDH减1,SI加1S9加1结束显示结果开始SCORE的输入和排序流程图:Change>0SI加1,change减1交换[SI]和[SI+1]AL<[SI+1]取SCORE的第SI个数存入AL把上一个数存入SCORE把SC中的数一个一个的取出来转换为十六进制的数SCORE从键盘输入10个0~100的数到sc中定义2个数据段SC和SCORENYNy统计人数的程序输入DATASSEGMENTBUFFERDB80,81DUP(0),'$'SCORE1DB10DUP(0);此处输入数据段代码DATASENDSSTACKSSEGMENTSTADB64DUP(0)SP_T

4、OPDB0STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AXMOVAX,STACKSMOVSS,AXLEASP,SP_TOPLEADX,BUFFERLEADI,SCORE1MOVAH,0AHINT21HLEASI,BUFFERADDSI,2MOVDL,0MOVCX,10JU:MOVAL,[SI]CMPAL,0DHJEEXITPUSHCXCMPAL,2CHJECH1POPCXINCSIINCDLLOOPJUJMPEXITCH1:CMPDL,2JNECH2MOVAL,[SI

5、-2]SUBAL,30HMOVCL,10MULCLMOVAH,0MOVBL,[SI-1]SUBBL,30HADDAL,BLMOV[DI],ALPOPCXINCDIINCSIMOVDL,0LOOPJUCH2:MOV[DI],100POPCXINCDIINCSIMOVDL,0LOOPJUEXIT:MOVAH,4CHINT21HCODESENDSENDSTART记人数DATASEGMENTSCOREDB67S5db0S6db0S7db0S8db0S9db0S10db0TABLEDWNP,NP,NP,NP,NP,NP,S60,S70,S80,S90,S100DATAENDSCODESE

6、GMENT'CODE'ASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAH,0LEASI,SCORESP:MOVAL,[SI]MOVBL,10DIVBLSALAL,1MOVBL,ALMOVBH,0JMPTABLE[BX]S100:INCS10JMPNEXTS90:INCS9JMPNEXTS80:INCS8JMPNEXTS70:INCS7JMPNEXTS60:INCS6JMPNEXTNP:INCS5NEXT:INCSILOOPSPFINISH:MOVAH,4CHINT21HCODEENDSENDSTART排序DATASSEGMENT

7、STRDB'PLSINPUTSCORE(0-100):',0DH,0AH,'$'SCOREDB20DB81DUP(0)DB'$';此处输入数据段代码SCDB10DUP(0)DATASENDSSTACKSSEGMENT;此处输入堆栈段代码STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此处输入代码段代码LEADX,STR;调显示字符串的首地址MOVAH,9INT21H;字符串显示L

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

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

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