Questo sito ha bisogno della pubblicità per poter essere mantenuto. Gentilmente disabilita il blocco della pubblicità nel tuo browser per questo sito web.
Caricamento in corso...Caricamento in corso...
Caricamento in corso...

Stringa vocali

Inserire da tastiera una stringa e contare quante vocali ci sono:

name "mycode"   ; output file name (max 8 chars for DOS compatibility)

org  100h    ; set location counter to 100h

#make com#
jmp start
;variabili
parola db 11,?,11 dup ("$")
numa db 0
nume db 0
numi db 0
numo db 0
numu db 0
msg1 db "dammi la stringa--> $"
msg2 db "nn contiene vocali$"
msga db "contiene la a--> $"
msge db "contiene la e--> $"
msgi db "contiene la i--> $"
msgo db "contiene la o--> $"
msgu db "contiene la u--> $"
acapo db 10,13, "$"
ba db 0
be db 0
bi db 0
bo db 0
bu db 0

stampa macro stringa
    lea dx,stringa
    mov ah,09h
    int 21h
endm

leggi macro var
    lea dx,var
    mov ah,0ah
    int 21h
endm

cifra macro car
    mov dl,car
    mov ah,02h
    int 21h
endm

converti macro nm
    add nm,"0"
endm

start:

stampa msg1
leggi parola
mov ax,0
mov ch,0
mov cl,parola[1]
mov si,2

ciclo:
cmp parola [si],"a"
je a
cmp parola [si],"e"
je e
cmp parola [si],"i"
je i
cmp parola [si],"o"
je o
cmp parola [si],"u"
je u
jmp fine
a:
inc ba
jmp fine
e:
inc be
jmp fine
i:
inc bi
jmp fine
o:
inc bo
jmp fine
u:
inc bu
jmp fine
fine:
inc si
loop ciclo

converti ba
converti be
converti bi
converti bo
converti bu

stampa acapo
stampa msga
cifra ba
stampa acapo
stampa msge
cifra be
stampa acapo
stampa msgi
cifra bi
stampa acapo
stampa msgo
cifra bo
stampa acapo
stampa msgu
cifra bu
ret