【发布时间】:2010-05-08 16:41:41
【问题描述】:
org 0x100
SEGMENT .CODE
mov ah,0x9
mov dx, Msg1
int 0x21
;string input
mov ah,0xA
mov dx,buff
int 0x21
mov ax,0
mov al,[buff+1]; length
;string UPPERCASE
mov cl, al
mov si, buff
cld
loop1:
lodsb;
cmp al, 'a'
jnb upper
loop loop1
;output
mov ah,0x9
mov dx, buff
int 0x21
exit:
mov ah, 0x8
int 0x21
int 0x20
upper:
sub al,32
jmp loop1
SEGMENT .DATA
Msg1 db 'Press string: $'
buff db 254,0
此代码不起作用。
我认为问题出在jnb upper。
这个程序应该把小写字母变成大写字母。
【问题讨论】:
-
您的问题是什么?您只是在描述一些代码并假设性能不佳。
-
我不知道为什么我的程序不起作用。
-
我认为他想将小写转换为大写。
-
您至少需要说明程序应该做什么,以及您看到的问题是什么。如果这是家庭作业,您可能还应该添加
homework标签。 -
当我运行这段代码时,我得到:s48.radikal.ru/i119/1005/5b/5f463e2f9e91.jpg