zoukankan      html  css  js  c++  java
  • 汇编:汇编语言实现冒泡排序(loop指令实现)

     1 ;===============================
     2 ;循环程序设计
     3 ;loop指令实现
     4 ;冒泡排序
     5 ;for(int i=0;i<N;i++){
     6 ;   for(int h=0;j<N-1-i>;j++){
     7 ;      if(array[j]>array[j+1]){
     8 ;           exchange(array[j],array[j+1]);
     9 ;        }
    10 ;   }   
    11 ;}
    12 DATAS SEGMENT
    13 buffer db 12,3,6,23,54,121,99,100,46,23 ;待排序的10个数
    14 DATAS ends
    15 CODES SEGMENT
    16     ASSUME CS:CODES, DS:DATAS
    17     START:
    18         mov AX,DATAS        ;待排序的内容的段地址
    19         mov DS,AX          
    20 
    21         mov bx,offset buffer ;待排序的内容的偏移地址
    22         mov si,0        ;外层循环起始下标0               
    23         xor cx,cx
    24         mov cl,10       ;设置外层循环次数
    25 
    26     flag1:
    27         mov di,0        ;内层循环起始地址下标0
    28         push cx         ;cx次数压栈
    29     flag2:
    30         mov al,[bx+di]
    31         cmp al,[bx+di+1]
    32         ja next1            ;大于
    33         xchg al,[bx+di+1]   
    34         mov  [bx+di],al     ;交换
    35     next1:
    36         inc di
    37         loop flag2
    38         pop cx          ;内层循环完毕时 出栈
    39     next2:
    40         inc si
    41         loop flag1
    42 
    43     exit:
    44         mov ah,4ch
    45         int 21H
    46 CODES ends
    47     end START
    48 ;=====================
  • 相关阅读:
    第二篇 Flask 中的 Render Redirect HttpResponse
    第一篇 你好,我叫Flask
    redis发布订阅
    redis学习
    mysql+centos7+主从复制
    Linux系统基础优化及常用命令
    vim与程序员
    Shell基本命令
    js bom和dom
    javaScript基础
  • 原文地址:https://www.cnblogs.com/roseAT/p/10249569.html
Copyright © 2011-2022 走看看