📄 4k1.asm
字号:
PUBLIC ONE
DATA SEGMENT PARA PUBLIC 'DATA'
BUF DB 100
DB ?
DB 100 DUP(?)
INPUT DB 'ENTER THE CHARS: '
DB '$'
RESULT DB 'THE RESULT IS '
DB '$'
AGAIN DB ' PRESS ANY KEY TO COUNINUE. PRESS ESC TO EXIT. '
DB '$'
DATA ENDS
STACK SEGMENT PARA PUBLIC 'STACK'
DB 200 DUP(?)
STACK ENDS
CODE SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CODE,DS:DATA,SS:STACK
ONE PROC NEAR
PUSH AX
PUSH CX
PUSH DX
PUSH DI
GO: MOV AH,06H
MOV BH,07
MOV CX,0
MOV DX,184FH
INT 10H ;清屏
MOV AH,2
MOV DH,0
MOV DL,0
MOV BH,0
INT 10H ;光标控制
LEA DX,INPUT
MOV AH,09H
INT 21H
LEA DX,BUF
MOV AH,0AH
INT 21H
LEA DI,BUF
INC DI
MOV CL,[DI]
MOV CH,0
INC DI
CHANG: MOV AL,[DI] ;改变大小写
CMP AL,61H
JB NEXT
CMP AL,7AH
JA NEXT
SUB AL,20H
MOV [DI],AL
NEXT: INC DI
LOOP CHANG
MOV AL,24H
MOV [DI],AL
MOV AH,2
MOV DH,4
MOV DL,0
MOV BH,0
INT 10H
LEA DX,RESULT
MOV AH,9
INT 21H
MOV AH,2
MOV DH,4
MOV DL,20
MOV BH,0
INT 10H
LEA DX,BUF ;显示结果
INC DX
INC DX
MOV AH,9
INT 21H
MOV AH,2
MOV DH,8
MOV DL,0
MOV BH,0
INT 10H
LEA DX,AGAIN
MOV AH,9
INT 21H
MOV AH,01H
INT 21H
CMP AL,1BH
JZ EXIT
JMP GO
EXIT: POP DI
POP DX
POP CX
POP AX
RET
ONE ENDP
CODE ENDS
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -