📄 附录一 shell 排序测试.htm
字号:
<BR> 29: INT 21H
<BR> 30: OR AX,AX
<BR> 31: JZ ZREND
<BR> 32: MOV AX,DS ; 未完,换段再读
<BR> 33: ADD AX,800H
<BR> 34: MOV DS,AX
<BR> 35: JMP ZREAD
<BR> 36: ZREND:
<BR> 37: MOV AH,3EH ; 关档
<BR> 38: INT 21H
<BR> 39: MOV AX,2400H
<BR> 40: MOV ES,AX
<BR> 41: SUB DI,DI
<BR> 42: SUB SI,SI
<BR> 43: MOV DS,BP
<BR> 44: SUB BP,BP
<BR> 45: ZC1:
<BR> 46: CALL ZCHGSEG
<BR> 47: MOV CX,5 ; 将不等长换为等长
<BR> 48: ZC3:
<BR> 49: LODSW
<BR> 50: CMP AL,0DH
<BR> 51: JZ ZC4
<BR> 52: STOSW
<BR> 53: LOOP ZC3
<BR> 54: INC SI
<BR> 55: INC SI
<BR> 56: JMP SHORT ZC5
<BR> 57: ZC4:
<BR> 58: MOV AX,2020H
<BR> 59: REP STOSW
<BR> 60: ZC5:
<BR> 61: INC BP
<BR> 62: LODSB
<BR> 63: DEC SI
<BR> 64: CMP AL,1AH
<BR> 65: JNZ ZC1
<BR> 66: STOSB
<BR> 67: MOV CS:ZBW2,BP ; BP为资料计数
<BR> 68: CALL ZSORT ; 排序
<BR> 69: CALL ZDEL ; 删除相同者
<BR> 70: CALL ZTR ; 换为不等长方式
<BR> 71: MOV SI,DX
<BR> 72: SUB CX,CX
<BR> 73: PUSH CS
<BR> 74: POP DS
<BR> 75: MOV DX,OFFSET ZFCB ; 将结果存档
<BR> 76: MOV AH,3CH
<BR> 77: INT 21H
<BR> 78: MOV BX,AX
<BR> 79: MOV AX,2400H
<BR> 80: MOV DS,AX
<BR> 81: SUB DX,DX
<BR> 82: OR SI,SI
<BR> 83: JZ ZC7
<BR> 84: MOV CX,8000H
<BR> 85: ZC6:
<BR> 86: MOV AH,40H
<BR> 87: INT 21H
<BR> 88: MOV AX,DS
<BR> 89: ADD AX,800H
<BR> 90: MOV DS,AX
<BR> 91: DEC SI
<BR> 92: JNZ ZC6
<BR> 93: ZC7:
<BR> 94: MOV CX,DI
<BR> 95: MOV AH,40H
<BR> 96: INT 21H
<BR> 97: MOV AH,3EH
<BR> 98: INT 21H
<BR> 99: INT 20H
<BR> 100: ZSORT: ; 排序子程式
<BR> 101: SHR BP,1
<BR> 102: ZS0:
<BR> 103: PUSH BP
<BR> 104: MOV CS:ZBW1,BP
<BR> 105: MOV AX,CS:ZBW2
<BR> 106: SUB AX,BP
<BR> 107: MOV DX,BP
<BR> 108: MOV BP,AX
<BR> 109: MOV DI,2400H
<BR> 110: MOV DS,DI
<BR> 111: SUB SI,SI
<BR> 112: CALL ZFINDES
<BR> 113: ADD BX,DI
<BR> 114: MOV ES,BX
<BR> 115: MOV DI,AX
<BR> 116: SUB DX,DX
<BR> 117: ZS1:
<BR> 118: CALL ZCOMPS
<BR> 119: JBE ZS4
<BR> 120: CALL ZXCHG
<BR> 121: PUSH DS
<BR> 122: PUSH ES
<BR> 123: PUSH SI
<BR> 124: PUSH DI
<BR> 125: PUSH DX
<BR> 126: ZS2:
<BR> 127: MOV DI,SI
<BR> 128: MOV AX,DS
<BR> 129: MOV ES,AX
<BR> 130: SUB DX,CS:ZBW1
<BR> 131: JC ZS3
<BR> 132: CALL ZFINDES
<BR> 133: MOV SI,AX
<BR> 134: ADD BX,2400H
<BR> 135: MOV DS,BX
<BR> 136: CALL ZCOMPS
<BR> 137: JBE ZS3
<BR> 138: CALL ZXCHG
<BR> 139: JMP ZS2
<BR> 140: ZS3:
<BR> 141: POP DX
<BR> 142: POP DI
<BR> 143: POP SI
<BR> 144: POP ES
<BR> 145: POP DS
<BR> 146: ZS4:
<BR> 147: ADD SI,10
<BR> 148: JS ZS7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -