这个仅仅实现了变化前面的4个字母。
但是关于出栈入栈的思想是很值得学习的!
代码部分:
assume cs:codesg,ds:datasg,ss:stacksg
stacksg segment
dw 0,0,0,0,0,0,0,0
stacksg ends
datasg segment
db '1. file '
db '2. Edit '
db '3. search '
db '4. view '
datasg ends
codesg segment
f: mov ax,stacksg
mov ss,ax
mov sp,16
mov ax,datasg
mov ds,ax
mov bx,0
mov cx,4
s0:push cx
mov si,0
mov cx,4
s:mov ax,[bx+3+si]
and al,11011111b
mov [bx+3+si],ax
inc si
loop s
add bx,16
pop cx
loop s0
mov ax,4c00h
int 21h
codesg ends
end f
结果:
第三行的search,就仅仅变化了前面的四个字符!
ok
汇编语言 循环让字符串中的部分字母变成大写