我想統計輸入字符串中元音的數量,只寫成很小的字母。
我的代碼是這一個,但他不指望他們右側(cmp
指令從未true
)我們如何計算程序集8086中字符串的元音數量?
data segment
s db 10 dup(' ')
data ends
code segment
assume ds:data, cs:code
debut: mov ax,data
mov ds,ax
mov dx,offset s
mov ah,0ah
int 21h
mov cl,s[1]
mov di,offset s
mov bx,0
nr_vocale: cmp cl,0
je sfarsit
mov al,[di]
cmp al,'a'
je increment
mov al,[di]
cmp al,'e'
je increment
mov al,[di]
cmp al,'i'
je increment
mov al,[di]
cmp al,'o'
je increment
mov al,[di]
cmp al,'u'
je increment
inc di
dec cl
increment: inc bx
sfarsit: mov dl,bl
mov ah,2
int 21h
mov ah,4ch
int 21h
ends code
end debut
謝謝,你是對的, s [2]字段不存儲字符串的大小。我使用符號'$'來查找字符串的結尾。 – user8474