📄 7.txt
字号:
DATA SEGMENT
keybuf1 DB 3
keynum1 DB ?
keychar1 DB 3 DUP(?)
keybuf2 DB 3
keynum2 DB ?
keychar2 DB 3 DUP(?)
keybuf3 DB 3
keynum3 DB ?
keychar3 DB 3 DUP(?)
keybuf4 DB 3
keynum4 DB ?
keychar4 DB 3 DUP(?)
num DB 4 DUP(?)
temp DB 4 DUP(?)
buf DB 10 DUP(?)
COUN DB 0
OH DB 0
JH DB 0
MESS1 DB 'PLEASE INPUT 4 DEC NUMBER:',0AH,0DH,'$'
MESS2 DB 'THE TOTAL OF EVEN IS:','$'
MESS3 DB 'FROM BIG TO SMALL OF THE OH AND JH IS:','$'
MESS4 DB 'THE SECOND BIG NUMBER IS:','$'
DATA ENDS
output MACRO m
PUSH DX
PUSH AX
LEA DX,m
MOV AH,09
INT 21h
POP AX
POP DX
ENDM
input MACRO m
PUSH DX
PUSH AX
LEA DX,m
MOV AH,10
INT 21h
POP AX
POP DX
ENDM
crlf MACRO
PUSH AX
PUSH DX
MOV DL,0dh
MOV AH,2
INT 21h
MOV DL,0ah
MOV AH,2
INT 21h
POP DX
POP AX
ENDM
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
output mess1
crlf
input keybuf1
crlf
input keybuf2
crlf
input keybuf3
crlf
input keybuf4
crlf
LEA DI,num
LEA SI,keychar1
MOV BL,keynum1
CALL DTOB
MOV [DI],AL
INC DI
LEA SI,keychar2
MOV BL,keynum2
CALL DTOB
MOV [DI],AL
INC DI
LEA SI,keychar3
MOV BL,keynum3
CALL DTOB
MOV [DI],AL
INC DI
LEA SI,keychar4
MOV BL,keynum4
CALL DTOB
MOV [DI],AL
MOV CX,0
MOV CL,4
LEA DI,num
MOV DL,0
lp1: MOV BL,[DI]
TEST BL,1
JZ lp2
ADD jh,BL
JMP lp3
lp2: INC DL
ADD oh,BL
lp3: INC DI
DEC CL
JNZ lp1
MOV AL,DL
OUTput mess2
CALL xianshi
MOV AL,oh
MOV BL,jh
CMP AL,BL
JG lp4
XCHG AL,BL
lp4: crlf
OUTput mess3
CALL xianshi
MOV AL,BL
CALL xianshi
CALL paixu
crlf
OUTput mess4
MOV AL,num+1
CALL xianshi
MOV AH,4ch
INT 21h
DTOB PROC NEAR
MOV CL,BL
MOV AX,0
lp5: MOV BL,[SI]
SUB BL,30h
MOV DL,10
MUL DL
XOR BH,BH
ADD AX,BX
INC SI
DEC CL
JNZ lp5
RET
DTOB ENDP
xianshi PROC NEAR
PUSH BX
LEA SI,temp
CBW
lp6: MOV DX,0
MOV BX,10
DIV BX
MOV [SI],DL
INC SI
CMP AX,0
JZ exit1
JMP lp6
exit1: MOV CX,SI
MOV AX,OFFSET temp
SUB CX,AX
MOV BX,CX
LEA DI,buf
DEC SI
lp7: MOV AL,[SI]
AND AL,0fh
OR AL,30h
MOV [DI],AL
DEC SI
INC DI
LOOP lp7
MOV BL,0dh
MOV [DI],BL
MOV BL,0ah
MOV [DI],BL
MOV BL,24h
MOV [DI],BL
crlf
LEA DX,buf
MOV AH,09
INT 21h
POP BX
RET
xianshi ENDP
paixu PROC NEAR
MOV CX,4
lp8: MOV BL,CX
LEA SI,num
lp9: DEC BL
CMP BL,0
JZ exit
MOV AH,[SI]
CMP AH,[SI+1]
JG lp10
MOV BH,[SI+1]
XCHG AH,BH
MOV [SI],AH
MOV [SI+1],BH
lp10: INC SI
JMP lp9
exit: LOOP lp8
paixu ENDP
code ENDS
END start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -