《汇编-数组排序(附源代码)》由会员分享,可在线阅读,更多相关《汇编-数组排序(附源代码)(4页珍藏版)》请在金锄头文库上搜索。
1、年级班号学号专业姓名实验名称数组排序实验类型设计型综合型创新型实验目的或要求实验目的:掌握子程序设计的原理和方法以,重点掌握子程序编写和调用的过程以及堆栈操作和参数以及局部变量的概念。实验要求:给定一个数组,数组包含10个整型元素,将其按照从小到大的顺序排列后输出,要求排序的算法用子程序来实现。实验原理(算法流程)(对算法设计进行描述,变量定义和寄存器分配情况,画出程序流程图或给出伪代码)(写不完时,可另加附页。)组内分工(可选)实验结果分析及心得体会(给出测试过程和测试结果,并对实验结果进行分析。心得体会可以写设计和实现整个过程中的心得)实验测试:1提示输入2输入数字,输出结果。结果分析:从
2、输入数字及输出结果看,结果正确。心得体会:成绩评定教师签名: 年 月 日备注:源代码附后,源代码要求有注释说明.386.MODEL FLATExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORDINCLUDE io.hcr EQU 0dhLf EQU 0ahnumbers EQU 10.STACK 4096.DATAprompt1 BYTE Please entry 10 numbers.,cr,Lf,0prompt2 BYTE Number : ,0number DWORD 20 dup(?) ,0array DWORD 20 dup(?),0p
3、rompt3 BYTE Now the range is : ,0.CODE_start: output prompt1 lea ebx,array mov ecx,numbersinNum: output prompt2 input number,20 atod number mov ebx ,eax add ebx, 4 loop inNum output prompt3 mov ecx, numberscycle1: mov dx,0 lea ebx,arraycycle2: inc dx cmp dx,numbers jnl cycle3 ;不小于则转移 mov ax,ebx cmp ax,ebx+4 jg exchange ;大于则转移 add ebx,4 jmp cycle2exchange: xchg ebx+4,ax mov ebx,ax add ebx,4 jmp cycle2cycle3: loop cycle1 mov eax,0 lea ebx,array mov ecx,numbersforout: mov eax,ebx dtoa number,eax add ebx,4 output number+6 loop forout INVOKE ExitProcess, 0PUBLIC _start END