📄 lijie32b.asm
字号:
DATA SEGMENT
DSTR DB 23H,45H,0AH,82H,0C2H,65H,8DH,5EH,0B7H,91H,33H,88H,78H,66H,44H,22H
DATAL EQU $-DSTR
P DW DATAL DUP(?)
DATA ENDS
STACK SEGMENT STACK
DW 100 DUP(?)
STACK ENDS
;十个无符号数从大到小排序
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
;======================
MOV SI,OFFSET P
MOV AX,OFFSET DSTR
MOV CX,DATAL
LOPA:MOV [SI],AX
ADD SI,2
INC AX
LOOP LOPA
;=======================
MOV DX,DATAL-1
ST1: MOV CX,DX
MOV BX,OFFSET P
ST2: MOV SI,[BX]
MOV DI,[BX+2]
MOV AL,[SI]
CMP AL,[DI]
JNC ST3
MOV [BX],DI
MOV [BX+2],SI
ST3: ADD BX,2
LOOP ST2
DEC DX
JNZ ST1
;====DISPLAY=========
MOV CX,DATAL
MOV BX,OFFSET P
LOPB:MOV SI,[BX]
MOV AL,[SI]
PUSH CX
MOV CL,4
ROL AL,CL
POP CX
CALL ASCII
MOV AL,[SI]
CALL ASCII
MOV DL,20H
MOV AH,02H
INT 21H
ADD BX,2
LOOP LOPB
MOV DL,0AH
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
;========================
MOV AH,4CH
INT 21H
ASCII PROC NEAR
AND AL,0FH
ADD AL,90H
DAA
ADC AL,40H
DAA
MOV DL,AL
MOV AH,02H
INT 21H
RET
ASCII ENDP
CODE ENDS
END START
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -