## 整数排序
### 1.设计思想:
- 由题意,可输入一串字符串,含有需要排序的数据,设计一个change1函数,将字符串中的数字字符提取出来作为整数存入另一个数组空间内。
- 转换完成后,编写函数output1,输出存入数组的数据个数和未排序的整型数组。
- 编写done函数,进行数组的选择排序,包含内外两循环,每次比较时,将较小的数放到前面。
- 再次调用output1函数,可输出排序后的数组。
- 最后退出程序。
### 2.流程图
![](https://www.writebug.com/myres/static/uploads/2021/10/26/ef644df3597e9634ff357c7a13bb274d.writebug)
### 3.测试过程:
编写完代码后,初测试,发现编译通过,运行错误,经过逐步运行排查,发现change1函数处的lw指令发生错误,分析后发现该处字符串中的取字符应该用lb进行取字符而不能用lw,lw是对字的取值,lb是对字节单位的取值,改完代码后发现程序运行正常,问题排除。
### 4.结果:
![](https://www.writebug.com/myres/static/uploads/2021/10/26/fb1ff397c4a95d0b54099a41f184dfad.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/26/355b1dbcbb34146d532a7498259a434d.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/26/112922c48a75e4928a4f648a39effbbf.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/26/d1c24018129bd14a33ef399fffdad057.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/26/43ab909fec35d945cdbf35fc355b61c4.writebug)
### 5.体会:
编写这道题时,首先理清思路,输入一段字符串,然后用函数将字符串进行转换,遇到空格或换行符存储一个数,要注意lw和lb的用法,前者是取字(4个字节),后者是取字节(1个字节),对字符串的字符要用lb,而用lw就会导致程序运行出错。然后使用选择排序函数进行排序,每两个数比较,将较小的数放到越前面,内外循环依次遍历,循环结束后,将排序后的数组输出。
因为涉及函数及变量较多,所以使用了栈保护相关寄存器内的值,要注意$sp的合理使用和使用后的恢复,合理使用能够保证相关寄存器的值在调用前后不改变,实现程序的合理运行,达到预期的效果。
基于汇编实现冒泡算法的整数排序【100012902】
版权申诉
7 浏览量
2023-07-01
10:22:36
上传
评论
收藏 165KB ZIP 举报
神仙别闹
- 粉丝: 2674
- 资源: 7640
最新资源
- 珍藏多年的基于matlab实现潮流计算程序源代码集合,包含多个潮流计算程序.rar
- 使用FPGA实现串-并型乘法器
- 基于matlab实现针对基于双曲线定位的DV-Hop算法中误差误差出一种基于加权双曲线定位的DV-Hop改进算法.rar
- 基于matlab实现由遗传算法开发的整数规划,车辆调度问题.rar
- 电视家7.0(对电视配置要求高).apk
- 免费计算机毕业设计-基于JavaEE的医院病历管理系统设计与实现(包含论文+源码)
- 手机端 我的世界融合植物大战僵尸版.apk
- 植物大战僵尸 · 戴夫的老年生活 手机版.apk
- Runcraft · 我的世界跑酷游戏 手机端.apk
- pta题库答案c语言.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈