我想统计输入字符串中元音的数量,只写成很小的字母。
我的代码是这一个,但他不指望他们右侧(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