Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- zad6 segment
- assume CS:zad6
- org 100h
- start:
- mov cx,16
- petla:
- mov ah,00h ;te dwie linie zwracaj? znak kt?ry znajduje si? w rejestrze ah
- int 16h
- cmp al,ENTER ;porownuje wartosc ktora zostala przypisana do rejestru al z z klawiszem eneter (13 - eneter w systemie 10-tnym kodu ASCII)
- je ok ;jezeli wartosc al jest rowna "enter" wykonaj skok do etykiety "ok"
- mov ah,02h ;wyslij to co zapisane w rejestrze dl na wyjscie
- mov dl,'*' ;zapisz do rejestru dl wartosc gwiazdki
- int 21h ;przerwanie DOS
- loop petla ;wyjście z pętli
- mov ah,09h ;te cztery linie odpowiadają za wypisanie na ekranie komunikatu PASSWORD FAIL po wpisaniu 16 znakow przez uzytkownika
- mov dx,offset password_fail
- int 21h
- jmp koniec
- ok: ;te cztery linie odpowiadają za wypisanie na ekranie komunikatu PASSWORD OK jesli uzytkownik zakonczy program enterem po wpisaniu mniej niz 16 znakow
- mov ah,09h
- mov dx,offset password_ok
- int 21h
- jmp koniec
- koniec:
- mov ah,4ch ;konczy dzialanie programu
- int 21h ;przerwanie DOS
- ENTER equ 13 ;słowo enter jest przypisane do znaku enter w systemie decymalnym w kodzie ASCII
- password_ok db 0ah, 0dh, 'PASSWORD OK$' ;wyświetlenie komunikatu PASSWORD OK w nowej lini
- password_fail db 0ah, 0dh, 'PASSWORD FAIL$' ;wyświetlenie komunikatu PASSWORD FAIL w nowej lini
- zad6 ends
- end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement