Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; Arvydas Vitkus PS-16, 2 lab.
- ; skaiciuoja kiek ivedei balsiu, paspaudus e baigia ivedima
- .model tiny
- .code
- org 100h
- start:
- mov al, 13h ; paleisti video mode
- mov ah, 0
- int 10h
- mov ah, 02h
- mov dl, 58
- int 21
- mov ah, 09h ; 9 - display string
- mov dx, offset text1 ; dx - data register
- int 21h
- ;---------------------------------------
- mov ah, 2 ;move cursor function
- mov bx, 0 ;page
- mov dh, 2 ;row
- mov dl, 0 ;collumn
- int 10h ;move cursor
- ;---------------------------------------
- mov bx, 0
- ciklas:
- mov ah, 01h
- int 21h
- ;---------------------------------------
- cmp al,97 ;a
- je balse
- cmp al,101 ;e
- je balse
- cmp al,105 ;i
- je balse
- cmp al,111 ;y
- je balse
- cmp al,117 ;o
- je balse
- cmp al,121 ;u
- je balse
- jmp ciklas
- ;---------------------------------------
- balse:
- inc bx
- cmp al,101
- je exit
- jmp ciklas
- exit:
- ; 12 balsiu (BX)
- ; AX = 12 / 10
- ; AH = 1, AL = 2
- mov ax, bx
- mov bl, 10
- div bl
- ; perkelti rezultata i bx registra
- mov bx, ax
- ; prideti 48 kad rodytu skaicius
- add bl, 48
- add bh, 48
- ;----------------------------------------
- mov ah, 09h ; 9 - display string
- mov dx, offset atsak ; dx - data register
- int 21h
- mov ah, 01h ; 9 - display string
- int 21h ;
- mov ch, 0 ; skaitliukas
- mov cl, al ; cl laiko atsakymu kieki
- sub cl, 48
- ;----------------------------------------
- mov ah, 02h
- mov dl, 10
- int 21h
- atsakymas:
- inc ch
- ; spausdinti
- mov ah, 02h ; pirmas sk.
- mov dl, bl
- int 21h
- mov ah, 02h ; antras sk.
- mov dl, bh
- int 21h
- mov ah, 02h ; tarpas
- mov dl, 32
- int 21h
- cmp ch, cl
- jl atsakymas
- ret
- atsak db 10,'Iveskite atsakymu kieki: ','$'
- text1 db 'Arvydas Vitkus PS-16, lab. 2',10,'Veskite simbolius: ',10,'$'
- text2 db 'Ivestas ne skaitmuo, baigiama programa','$'
- end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement