汇编语言程序有错误:已知字符串ARRAY包含50个元素,均为大写字母或小写字母,编程将其中的大写字母转换成小写字母,并显示转换之后的字符串。

DATAS SEGMENT
st1 db 'aBcdefGhILmNoPQirT$'
DATAS ENDS

CODES SEGMENT
ASSUME CS:CODES,DS:DATAS ;cs:代码段,ds:数据段
START:
MOV AX,DATAS
MOV DS,AX

mov cx,50
mov bx,0 ;cx:数据寄存器
s:mov al,st1[bx]
or al,00100000b
mov st1[bx],al

inc bx ;inc:将指定的操作数内容加一
loop s

mov dx,offset st1 ;offset:将数值回送变量或标号的偏移地址
mov ah,9
int 21h ;int:输出

MOV AH,4CH
INT 21H

CODES ENDS
END START