注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

信息 灵感 创新

I? =Information,Inspiration,Innovation

 
 
 

日志

 
 
关于我

we are 5. Mathematics, Computation, Programming, Engineering, and Making fun of life.

网易考拉推荐

汇编:冒泡法排序  

2014-12-19 15:43:13|  分类: x86ASM |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
;以字为单位对无符号数采用冒泡法排序
;DS:[SI]中为排序的数据
;CX中为数据个数
assume cs:code,ds:data

data segment
  x dw 1234h,9876h,0abcdh,4321h,3456h,6789h,0043h,0fedch,009ah,0147h,3322h,8888h,3214h,0001h,0ffffh,2468h
  CNT EQU ($-x)/2
data ends

code segment
start:
  mov ax,data
  mov ds,ax
  mov si,00h
  mov cx,CNT
  call MySort 
  mov ax,4c00h
  int 21h
MySort:
  pushf
  push ax
  push bx
  push cx
  push dx
  push si
outer:
  push cx
  mov bx,si
inner:
  push cx
  mov ax,si
  shr ax,1
  add cx,ax
  dec cx
  mov ax,ds:[bx]
  cmp ax,ds:[si]
  jnb noswap
  push ax
  push ds:[si]
  pop ax
  pop ds:[si]
  mov ds:[bx],ax
noswap:
  add bx,2;inner next word
  pop cx
  loop inner
  add si,2;outer next word
  pop cx
  loop outer
  
  pop si
  pop dx
  pop cx
  pop bx
  pop ax
  popf
  ret
  
code ends
end start   
  评论这张
 
阅读(452)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016