学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
 13 12
发新话题
打印

冒泡排序,要求数据从键盘输入

冒泡排序,要求数据从键盘输入

冒泡排序,要求数据从键盘输入

TOP

这是老师布置得题,大家帮以下忙

TOP

首先把输入的数据存入一数组,然后对数组排序

TOP

嗯,算法很简单,楼主要自己动手做才会有进步的
人生重要的不是所站的位置,而是所朝的方向

TOP

写来看看
让我见识下汇编怎么写排序!
Fight  to win  or  die...

TOP

;code by lys
assume cs:codesg,ds:datasg,ss:stack

datasg segment
s dw 1,3,8,5,-1,2,7,9,4,6
datasg ends

stack segment
dw 0,0,0,0,0,0
stack ends

codesg segment
start: mov ax,datasg
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,12
mov cx,LENGTHOF s -1

L1: push cx
mov bx,0
mov cx,LENGTHOF s -1 ;这里cx=字符个数-1 !

L2:
mov ax,[bx]
cmp ax,[bx+2]
jle C1 ;有符号数用g,l 无符号数用a,b
xchg ax,[bx+2]
mov [bx],ax

C1:
add bx,2
loop L2
pop cx
loop L1
mov ax,4c00h
int 21h
codesg ends
end start

转载的哈, 你慢慢看...

人生重要的不是所站的位置,而是所朝的方向

TOP

其实排序还是简单的
主要是把输出的字符转换成数据保存起来比较麻烦
West and east,home is best……

TOP

网上都有~!

TOP

输入的数据以空格为标记,表示一个新的数开始
将AX置0,一个新的数据输入的第一个字符转换为十进制后,将AX乘以10加以转换后的十进制保存在AX中,依次保存以后的几位数,遇到空格就表示这个数结束,将AX的数据保存到内存中
将全部数据保存完后,就可以利用上面的排序进行冒泡排序
如果还要将排好的数据输出,还要将每个数的每位转换 为ASCII码一个个输出

West and east,home is best……

TOP

谢谢大家了啊,用了一下午的时间把这个问题给解决啦.嘎嘎~~~

TOP

 13 12
发新话题