Я прочитал о коде, чтобы компьютер подал звуковой сигнал, но не могу заставить его работать.Следующий код просит пользователя ввести цифры.Цифры отображаются на экране, но если пользователь вводит нецифровый символ, он должен подать звуковой сигнал.Когда я запускаю программу и набираю нецифровый символ, он просто падает.
INCLUDE Irvine32.inc
.data
enterDigits BYTE 'Please type some digits: ', 0
.code
main PROC
mov EDX, OFFSET enterDigits
call WriteString
L1:</b>
call ReadChar
cmp AL, 0Dh
je FINISHED
cmp AL, 30h
jl BEEP
cmp AL, 39h
jg BEEP
call WriteChar
loop L1
BEEP:</b>
mov AH, 02h
mov DL, 07h
int 21h
jmp L1
FINISHED:</b>
call CRLF
call CRLF
exit</b>
main ENDP</b>
END main
If I replace BEEP with:
BEEP:</b>
mov AL, 33h
call WriteChar
jmp L1
При печати нецифрового символа будет напечатано 3Не знаю, имеет ли это какое-то значение или нет.