求一个用汇编实现的冒泡算法

michael9527 2009-02-12 02:05:15
给出函数为void bubble(int *arr) { ......}
长度为length,用汇编实现
...全文
144 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
michael9527 2009-02-12
  • 打赏
  • 举报
回复
2楼你给的那个代码不能编译啊,是纯汇编版的吗,好多语法不支持。。。。
michael9527 2009-02-12
  • 打赏
  • 举报
回复
32位的程序,就是一个函数
void bubble(int *arr) { ......} 然后里面的排序内容是用汇编实现的,程序的其他代码都是C的
yellowhwb 2009-02-12
  • 打赏
  • 举报
回复

dseg segment

Array dw 10,9,8,7,6,5,4 dup(8)
Len = ($-Array)/2
addr dw ?
dseg ends

cseg segment
assume cs:cseg,ds:dseg

start:
mov ax,dseg
mov ds,ax

mov cx,Len-1
mov di,0
mov si,Len
begin:
dec si
mov di,0
again:
mov bx,di
shl bx,1
mov ax,word ptr Array[bx]
inc di
cmp ax,Array[bx+2]
jna next
xchg ax,Array[bx+2]
mov Array[bx],ax
next:
cmp di,si
jb again

loop begin

mov ah,4ch
int 21h
cseg ends
end start
yellowhwb 2009-02-12
  • 打赏
  • 举报
回复
http://download.csdn.net/down/907587/yxiaow
sagegz 2009-02-12
  • 打赏
  • 举报
回复
大哥,放错版块了...
飞雪居然说反汇编...
你的程序还要写子程序,真的很复杂.
楼主居然都没说是16位还是32位汇编...
waizqfor 2009-02-12
  • 打赏
  • 举报
回复
baihacker 2009-02-12
  • 打赏
  • 举报
回复
嘿嘿,先写好,直接反汇编就是了.

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧