题目
将内存数据段INSTR地址开始存放的一个由字母组成的字符串中的小写字母全部转换成大写字母(其余字符不变)后存至内存数据段OUTSTR地址处。
如原字符串是“welcome to MASM!”,那么转换完后应该是“WELCOME TO ASM!”。
程序
DATA SEGMENT
INSTR DB 'welcome to MASM!'
STRLEN EQU -INSTR OUTSTR DB STRLEN DUP(?),13,10,’’
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
LEA SI,INSTR
LEA DI,OUTSTR
MOV CX,STRLEN
NEXTCHAR:
MOV AL,[SI]
CMP AL,'a'
JB UNCHG ;不是小写字母,则不转换
CMP AL,'z'
JA UNCHG ;不是小写字母,则不转换
SUB AL,20H ;将小写字母转换为大写字母
UNCHG:
MOV [DI],AL
INC SI
INC DI
LOOP NEXTCHAR
MOV AH,4CH
INT 21H
CODE ENDS
END START
0