没有得到用户输入的字符串的最后一个单词吗? (解决了)

时间:2019-08-18 08:24:18

标签: masm x86-16

应该得到字符串的最后一个单词,但是没有显示出来,为什么会这样?

没有得到字符串的最后一个单词。不知道。

已解决!!!!

.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     但也应该得到程序员。     但是这个词的计数是有效的。

  

0 个答案:

没有答案