2014-11-25 30 views
0

我想用匯編語言編寫彙編語言程序。該計劃是關於秒錶。我想通過使用鍵盤按鍵來控制此時鐘,例如按下S開始。再次S停止。通過點擊空格鍵它會暫停。等等。但我不知道如何讓我的代碼能夠在代碼執行過程中聽鍵盤筆畫。我如何在我的代碼中處理這些事件。誰能幫我在x86彙編語言中執行期間始終監聽鍵盤輸入

+1

這通常是通過編寫一箇中斷處理程序並將其插入到正確的中斷處理鏈中來完成的。這通常被稱爲「掛鉤」中斷。具體如何實現可以根據您的硬件和操作系統而定。你需要非常具體.. – Ron 2014-11-25 05:04:34

+0

其實我不知道如何處理中斷。操作系統是Windows 8和64位英特爾機器 – p096035 2014-11-25 06:52:27

回答

0

爲了能夠聽鍵盤輸入在後臺所有的時間和做

前景另一項工作,你的程序應該能夠對事件做出反應。在DOS中,這可以用一個

TSR來完成。另一種可能性是每次檢查秒錶是否使用int 16h的函數ah = 1增加顯示時按鍵是否被按下。如果沒有設置進位標誌,則調用該功能後,用戶按下了一個鍵。

+0

當我嘗試在實模式下運行此代碼即32位模式它正確組裝但不執行。爲什麼這樣? – p096035 2014-11-28 20:16:52

+0

@van Uitkon **如果調用此函數後進位標誌未設置,則**不正確,因爲狀態是通過零標誌返回的! – 2014-11-30 21:02:00