【汇编语⾔】将键盘输⼊的⼩写字母转换成⼤写字母
【题⽬】编写程序,从键盘输⼊⼀串字符,以’$'或回车结束,将其中的⼩写字母转变成⼤写字母,其他字母不作转换,原样输出,结果在屏幕上显⽰。
DATA SEGMENT
STRING DB 50;字符串最⼤长度
DB 0 ;字符串实际长度
DB 50 DUP(0);字符串有效长度
MSG1 DB 'INPUT STRING:$';提⽰信息
MSG2 DB 'OUTPUT STRING:$'
CRLF DB 0DH,0AH,'$';换⾏
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE ,DS:DATA
START: MOV AX, DATA
MOV DS, AX
LEA DX,MSG1;显⽰提⽰信息
MOV AH,09H
INT 21H
LEA DX,STRING;输⼊字符串
MOV AH,0AH
INT 21H
LEA SI,STRING+1
XOR CX,CX
MOV CX, [SI] ;循环次数
LEA BX, STRING+2 ;把STRING的偏移地址送到BX
ALP: MOV AL, [BX]
CMP AL, '$' ;判断是否为最后⼀个字符
JZ OVER ;等于$,则执⾏OVER
CMP AL, 'a' ;AL与⼩写a⽐较
JB NEXT ;AL⽐a⼩时执⾏NEXT
汇编语言大小写字母转换CMP AL, 'z'
JA NEXT ;AL⽐z⼤时执⾏NEXT
SUB AL, 20H ;⼩写转成⼤写
JMP NEXT
NEXT:
MOV [BX],AL ;把转换后的字符串送回原地址
INC BX
LOOP ALP
OVER:
LEA DX,CRLF
MOV AH,09H ;换⾏
INT 21H
LEA DX,MSG2
MOV AH,09H ;显⽰提⽰信息
INT 21H
LEA DX,STRING+2 ;输出转换后的字符串
MOV AH,09H
INT 21H
MOV AH, 4CH
INT 21H
CODE ENDS
END START
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论