⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sy4-mpsort.asm

📁 汇编语言中
💻 ASM
字号:
.MODEL        SMALL
.STACK
.DATA

       MESS1  DB        'Before sort:',13,10,'$'
       MESS2  DB        'After sort:',13,10,'$'
          P3  DB        13,10,'$'
          P5  DB        'SORT OK!',13,10,'$'
              ORG       1000H
       ARRAY  DB        56H,23H,37H,78H,0FFH,0,12H,99H,64H,0B0H
              DB        78H,80H,23H,1,4,0FH,2AH,46H
     SORTNUM  EQU       ($-ARRAY)/TYPE ARRAY
.CODE
.STARTUP
              LEA       DX,MESS1
              MOV       AH,09H
              INT       21H
              CALL      DISPL
              LEA       DX,P3
              MOV       AH,09H
              INT       21H

              MOV       CX,SORTNUM-1
      OUTLP:  MOV       DX,CX
              MOV       BX,OFFSET ARRAY
       INLP:  MOV       AL,[BX]
              CMP       AL,[BX+1]
              JNA       NEXT
              XCHG      AL,[BX+1]
              MOV       [BX],AL
       NEXT:  INC       BX
              DEC       DX
              JNZ       INLP

              LOOP      OUTLP
              MOV       DX,OFFSET P5
              MOV       AH,09H
              INT       21H

              LEA       DX,MESS2
              MOV       AH,09H
              INT       21H
              CALL      DISPL
.EXIT         0

       DISPL  PROC      NEAR
              MOV       BX,OFFSET ARRAY
              MOV       CX,SORTNUM
      LOOP1:  PUSH      CX
              MOV       CL,[BX]
      LOOP2:  MOV       DL,CL
              ROR       DL,1
              ROR       DL,1
              ROR       DL,1
              ROR       DL,1
              AND       DL,0FH
              CMP       DL,09H
              JA        ZIMU1
              ADD       DL,30H
              JMP       OUTPUT1
      ZIMU1:  ADD       DL,37H
    OUTPUT1:  MOV       AH,02H
              INT       21H

              AND       CL,0FH
              CMP       CL,09H
              JA        ZIMU2
              ADD       CL,30H
              JMP       OUTPUT2
      ZIMU2:  ADD       CL,37H
    OUTPUT2:  MOV       DL,CL
              MOV       AH,02H
              INT       21H
              MOV       DL,48H
              MOV       AH,02H
              INT       21H
              MOV       DL,20H
              MOV       AH,02H
              INT       21H

              INC       BX
              POP       CX
              LOOP      LOOP1
              RET
       DISPL  ENDP
              END


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -