order.asm

来自「用汇编语言对一些固定输入的数字进行排列顺序.」· 汇编 代码 · 共 77 行

ASM
77
字号
STACK SEGMENT STACK 'STACK'
      DW 100H DUP(?)
  TOP LABEL WORD
STACK ENDS
DATA  SEGMENT
    A DB 21H,22H,23H,24H,25H
   FL DB 100H DUP(?)
DATA  ENDS
 CODE SEGMENT
      ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
START:MOV AX,DATA
      MOV DS,AX
      MOV ES,AX
      MOV AX,STACK
      MOV SS,AX
      LEA SP,TOP
      MOV CX,5
      DEC CX
      CALL DIVDIS
      LEA SI,A
      ADD SI,CX
  LP1:PUSH CX
      PUSH SI
  LP2:MOV AL,[SI]
      CMP AL,[SI-1]
      JBE NOXCHG
      XCHG AL,[SI-1]
      MOV [SI],AL
NOXCHG:DEC SI
       LOOP LP2
       POP SI
       POP CX
       LOOP LP1
       CALL DIVDIS
       MOV AH,4CH
       INT 21H
DIVDIS PROC NEAR
       LEA BX,A
       LEA DI,FL
       MOV CX,5
    L1:MOV AL,[BX]
       SHR AL,1
       SHR AL,1
       SHR AL,1
       SHR AL,1
       ADD AL,30H
       MOV [DI],AL
       INC DI
       MOV AL,[BX]
       AND AL,0FH
       ADD AL,30H
       MOV [DI],AL
       INC DI
       MOV AL,20H
       MOV [DI],AL
       INC DI
       INC BX
       LOOP L1
       MOV CX,14
    L2:MOV AH,02H
       SUB DI,15H
       MOV DL,[DI]
       INC DI
       INT 21H
       LOOP L2
       MOV AH,02H
       MOV DL,0DH
       INT 21H
       MOV AH,02H
       MOV DL,0AH
       INT 21H
       RET
DIVDIS ENDP
CODE  ENDS
      END START
       

⌨️ 快捷键说明

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