| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2187 人关注过本帖
标题:想请教一下这段代码的错误是不是如同我想的那样
只看楼主 加入收藏
oped02
Rank: 2
等 级:论坛游民
帖 子:38
专家分:20
注 册:2022-10-16
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
想请教一下这段代码的错误是不是如同我想的那样
找错误.txt (440 Bytes)

这段代码应该是用来实现将一个给定大小的数组(长度为十)进行从小到大的冒泡排序
题目说这里面有两个错误
我找到了两个但感觉不是特别确认
第一个是如果使用了si和di的话,应该使用串指令来取代mov
第二个是后面LEN*2那个*2应该要去掉,不然感觉会越界
搜索更多相关主题的帖子: 越界 冒泡排序 指令 代码 错误 
2022-12-24 11:04
Valenciax
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:11
帖 子:340
专家分:2482
注 册:2016-5-15
收藏
得分:20 
1.
MOV BX, ARRAY[DI+1] ; 应该是 MOV BX, ARRAY[DI+2] ,因为数组是word,相邻的元素差2,不是1
MOV ARRAY[DI+1], AX  ;应该是 MOV ARRAY[DI+2], AX ,同上,但可以视为同一错误

2.
CMP DI, LEN*2 ; 应该是  应该是CMP DI,(LEN-1)*2, 数组个数=10,  内圈比较只须9次 (数组个数-1)
2022-12-25 17:13
oped02
Rank: 2
等 级:论坛游民
帖 子:38
专家分:20
注 册:2022-10-16
收藏
得分:0 
回复 2楼 Valenciax
谢谢您的解答
这样看来我对汇编的理解还是很淡薄
祝您圣诞节快乐
2022-12-25 21:04
快速回复:想请教一下这段代码的错误是不是如同我想的那样
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014849 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved