چطوری میشه از Not Responding جلوگیری کنم.
مثل این سورس کد، که وظیفه داره بوق کامپیوتر رو به صدا در بیاره تا زمانی که کلیدی فشرده نشه.
PAGE 110,100
TITLE 'KEY_DET4.ASM' detect a special key
;-----------------------------------------------
;
; Defining Segment of Program
; ----------------------------
CODESG SEGMENT PARA 'CODE'
ASSUME SS:CODESG,DS:CODESG,CS:CODESG
ORG 100H
START: JMP MAIN ;1-Jump DATA
;-----------------------------------------------
MESSAGE DB 'to stop bell press Q or ESC','$'
;-----------------------------------------------
;
MAIN PROC NEAR
MOV AH,09H ;2-Service 9 interupt
LEA DX,MESSAGE ;3- 21H to write MESSAGE
INT 21H ;4- on monitor
NO_KEY: MOV AH,02H ;5-Service 2 interupt
MOV DL,07H ;6- 21H for writting a
INT 21H ;7- character on monitor
MOV AH,01 ;8-Service 1 interupt 16H
INT 16H ;9- for detecting a key
JZ NO_KEY ;10- if no key go NO_KEY
MOV AH,00 ;11-Else determine which
INT 16H ;12- key is preesed
CMP AL,'Q' ;13-If pressed key is
JE EXIT ;14- is Q go to EXIT
CMP AL,27 ;15-If pressed key is Esc
JE EXIT ;16- go to EXIT
JMP NO_KEY ;17-Else back to NO_KEY
EXIT:
MOV AX,4C00H ;18- End of
INT 21H ;19- processing
MAIN ENDP ; End of procedure
CODESG ENDS ; End of segment
END START ; End of program
این کار رو در زبانهای سطح بالا می تونیم با تایمر یا چند نخی استفاده کنیم.
با تشکر