-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvowelcheck.asm
More file actions
55 lines (46 loc) · 929 Bytes
/
vowelcheck.asm
File metadata and controls
55 lines (46 loc) · 929 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
ASSUME DS: DATA, CS: CODE
DATA SEGMENT
INP DB 0AH, 0DH, 'ENTER THE STRING: $'
MSG DB 0AH, 0DH, 'THE NUMBER OF VOWELS: $'
VOWEL DB 'a', 'A', 'e', 'E', 'i', 'I', 'o', 'O', 'u', 'U', '$'
DATABUF DB 100, 0, 100 DUP('$')
DATA ENDS
CODE SEGMENT
START:
MOV AX, DATA
MOV DS, AX
LEA DX, INP
MOV AH, 09H
INT 21H
LEA DX, DATABUF
MOV AH, 0AH
INT 21H
MOV SI, DX
LEA DX, MSG
MOV AH, 09H
INT 21H
MOV BL, 00H
CHECK:
LEA DI, VOWEL
MOV CX, 000AH
MOV AL, [SI]
CONT:
CMP AL, [DI]
JE FOUND
INC DI
LOOP CONT
JMP NEXT
FOUND:
INC BL
NEXT:
INC SI
CMP DATABUF[SI], 0AH
JNE CHECK
MOV DL, BL
ADD DL, 30H
MOV AH, 02H
INT 21H
MOV AH, 4CH
INT 21H
CODE ENDS
END START