回复:如何对100个数据进行排序

n次看你的背影

  • 帖子

    2321
  • 精华

    73
  • 被关注

    53

论坛等级:奇侠

注册时间:2008-03-11

普通 普通 如何晋级?

发布于 2013-08-24 13:44:06

8楼

今天刚好闲暇无事,给楼主写了一段“下沉法“排序代码,这100个浮点数连续存放在DB100里面,可参考如下:

OPN DB 100 //打开当前的数据块

L 99 //外循环次数100-1=99(数据个数减一)
NXT2: T LW 20
LAR1 P#0.0 //内外循环从数据起始地址开始寻址
NXT1: T LW 22 //内循环次数
L DBD [AR1,P#0.0]
L DBD [AR1,P#4.0] //装载两个相邻的数据进行比较
<R //将小于改为大于数据从大到小排序!!!
JC M001 //如果前面的数小于后面的数跳转到M001标签,数据保存原样
T DBD [AR1,P#0.0]
POP
T DBD [AR1,P#4.0] //如果前面的数不小于后面的数两个数据交换位置
M001: +AR1 P#4.0 //内循环地址向前递增一个双字
L LW 22 //装载当前内循环次数
LOOP NXT1 //内循环次数减一,跳转到NXT1标签,直到减至0离开内循环往下执行
L LW 20 //装载当前外循环次数
LOOP NXT2 //外循环次数减一,跳转到NXT2标签,直到减至0离开外循环往下执行

代码测试过了,注意:将代码中的中文小于号修改成英文字符就好了。
佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!”
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。