assume cs:code,ds:data
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
begin:
mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
; the lower letter is between 97 and 122
letterc:
mov al,[si]
cmp al,0
je return ;等于0,直接return
cmp al,97
jb next ; 小于a,直接下一个
cmp al,122
ja next ; 大于z,直接下一个
and al,11011111b
mov [si],al ; 转换成大写,存回去
next:
inc si
jmp short letterc
return:
ret
code ends
end begin