应该得到字符串的最后一个单词,但是没有显示出来,为什么会这样?
没有得到字符串的最后一个单词。不知道。
已解决!!!!
.model small
.stack 100h
.data
msg1 db 'Enter a string:$'
msg2 db 'No. of words are:$'
string db 50 dup(?)
wordcount db ?
.code
main proc
mov ax, @data
mov ds, ax
mov es, ax
mov ah, 0
mov al, 2
int 10h
lea dx, msg1
mov ah, 9
int 21h
lea di, string
cld
input:mov ah, 1
int 21h
cmp al, 13
je endinput
stosb
jmp input
endinput: mov [di], '$ '
xor bh,bh
lea si, string
cld
checkstring: lodsb
cmp al, '$'
je stop
cmp al, 32
je printnewline
mov dl, al
mov ah, 2
int 21h
jmp checkstring
printnewline: mov dl, 13
mov ah, 2
int 21h
mov dl, 10
mov ah, 2
int 21h
inc bh
jmp checkstring
stop:
lea dx, msg2
mov ah, 9
int 21h
add bh, 48
mov wordcount, bh
mov dl, wordcount
mov ah, 2
int 21h
mov ah, 4ch
int 21h
main endp
end
解决了问题
在这里,我没有正确知道字符串的最后一个单词。但是我仍然没有。字数不错。 只有>>我
am 但也应该得到程序员。 但是这个词的计数是有效的。