Write Your Own Operating System Tutorial(中文版) -Lesson 5: 動起來!

 Lesson 5: 動起來!


在屏幕上打印點東西是夠樂的,但是如果操作系統一點都不能互動的話,還遠不夠好。讓我們試着讓它從鍵盤讀取輸入。我們將再一次使用BIOS的函數,來讀取鍵盤。

我們將使用0x16號中斷的0號函數。用下面兩條指令就可以完成了。

     xor  ah, ah    ; we want function zero

     int  0x16 ; wait for a keypress

 

這個函數將使計算機暫停,直到有鍵被按下時才返回。這可以用在“Press any key to continue”時,或者其他你想得到用戶輸入的時候。被按下德那個鍵的掃描值存儲在AH寄存器中,而 ASCII碼被保存在AL中。

這節課的作業就是寫一個簡單的啓動程序來做一些交互工作。可以是在用戶按下什麼鍵的時候打印一條消息,或者是讓用戶自由輸入,並且在屏幕上顯示輸入了點什麼。

如果你遇到困難,這裏是我做的一個例子。不過只有你自己試過,才能體味到其間的快樂。

下一課我們將學習怎麼讓我們的操作系統的大小超過引導記錄扇區的尺寸。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章