北京联合大学微机原理实验报告微机实验三数据比较及排序程序.doc
(7页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
9.90 积分
北京联合大学实验报告课程(项目)名称: 微机原理与接口技术 学 院: 自动化学院 专 业:自动化 姓 名: 学 号: 指导教师: 成 绩: 2014年 11 月 14 日实验三 数据比较及排序程序一、任务与目的1. 实验任务:(1) 熟悉和掌握数据比较指令的用法;(2) 掌握多字节有符号数及无符号数排序程序的编写方法。2. 实验目的(1). 掌握数据比较指令的使用方法;(2) 熟悉数据排序实现的基本方法。二、原理(条件)1. 相关知识:(1) 数据比较指令的使用方法;(2) 8086/8088汇编程序数据排序的基本算法。2.实验条件:MASM汇编程序及TD调试软件。三、内容步骤1.启动TD(Turbo Debugger)输入程序段,观察执行情况、标志位变化并分析结果。然后,AX 和BX互换一下数据再运行一遍,并观察结果。(1) MOV AX, 2C76H MOV BX, 0FF80H CMP AX, BX JAE ABOVE ;注意ABOVE由具体地址替代,下同。 XCHG AX,BXABOVE:HLT (2) MOV AX,0FF80H MOV BX,2C76H CMP AX,BX JLE ABOVE JMP STOPABOVE: XCHG AX,BXSTOP: HLT2.编写10个双字节(字)无符号及从小到大排序程序,观察执行情况并分析结果:利用MASM宏汇编程序及TD程序进行调试。无符号数排序参考程序如下,请在参考程序之上改写。 DSEG SEGMENTBUFFER DW 0AAFEH,3768H,5CD9H,2227H,0BDC1H,725AH,0C236HDW 66FFH,0E23H,8577HDSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART: MOV AX,DSEG MOV DS,AX LEA DI, BUFFER MOV BL,9 NEXT1:MOV SI,DI MOV CL,BLNEXT2:MOV AX,[SI] INC SI INC SI CMP AX,[SI] J NEXT3 ;小于则不交换 MOV DX,[SI] MOV [SI-2],DX MOV [SI],AXNEXT3:DEC CL JNZ NEXT2 DEC BL JNZ NEXT1 MOV AH,4CH INT 21H CSEG ENDS END START图1 排序程序参考框图DSEG SEGMENTBUFFER DW 0AAFEH,3768H,5CD9H,2227H,0BDC1H,725AH,0C236HDW 66FFH,0E23H,8577HDSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEGSTART: MOV AX,DSEG MOV DS,AX LEA DI, BUFFER MOV BL,9 NEXT1:MOV SI,DI MOV CL,BLNEXT2:MOV AX,[SI] INC SI INC SI CMP AX,[SI] JB NEXT3 ;小于则不交换 MOV DX,[SI] MOV [SI-2],DX MOV [SI],AXNEXT3:DEC CL JNZ NEXT2 DEC BL JNZ NEXT1 MOV AH,4CH INT 21H CSEG ENDS END START结论分析:该结果是将我们输入的数据按照从小到大排序,并且是无符号数的。所以结果为:0E23,2227,3768,5CD9,66FF,725A,8577,AAFE,BDC1,C2363.编写10个双字节(字)有符号数从小到大排序程序,观察执行情况并分析结果。 DSEG SEGMENTBUFFER DW 0AAFEH,3768H,5CD9H,2227H,0BDC1H,725AH,0C236H,DW 66FFH,0E23H,8577HDSEG ENDS : : : 将题2中的空改为JL,其余代码不变,即可得到无符号数的排序。四、数据处理(现象分析)需要注意有无符号数的条件,有符号数所运用的指令时JL,无符号数所用的指令时JB,有无符号数所得的结果是不同的。 五、结论六、参考资料《微型计算机原理与接口技术》实验指导书七、评语 关 键 词: 实验 微机 报告 原理 数据 比较 大学 排序 联合 程序
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:北京联合大学微机原理实验报告微机实验三数据比较及排序程序.doc
链接地址: https://www.wenku365.com/p-56302254.html