30天自製作業系統day5

2021-07-01 22:09:07 字數 315 閱讀 7754

這章主要講如何顯示字元,以及段表、中斷向量表的初始化方法。

字元的顯示實際上是顯示一組畫素。書中的方法是,事先為每個字元對應乙個16*8的畫素陣列,每個陣列元素代表該位置有沒有畫素。這樣便可以把乙個字元表示為一串16byte的二進位制數。

顯示乙個字元的函式:

void putfont8(char *vram, int xsize, int x, int y, char c, char *font)

}

最後是初始化gdt和idt,都存放在記憶體中,本質上就是寫資料到記憶體。它們具體的使用應該在接下來幾章再介紹。

30天自製作業系統 day5

30天自製作業系統 day5 這一節我們引入了c語言,終於告別了彙編,使用c語言給我們帶來了極大的便利,因為我們大學都是從學習c語言開始的。但是我們的系統現在還不完全是使用c原因編寫的,還是會帶有一些組合語言,那麼如何將c語言與彙編一起編譯呢 1 將start c.tar放在自己的linux環境下進...

30天自製作業系統

第一天的內容很少,是一些簡單的基礎知識,在這裡我就沒有必要寫出來了,只說出大概的輪廓了,然後我會對其中的幾點進行詳細的解釋。文章的第一天的輪廓大概是這樣的,作者首先用二進位制編輯器做了乙個顯示二進位制的程式,然後用彙編完全db的形式,後又進行改善,最後以比較標準的組合語言編寫,但程式主體部分還沒有翻...

30天自製作業系統day01

第一天的標題,從計算機結構到匯程式設計序入門。這一天作者共講了一下內容 1.作者上來就用二進位制編輯器製作了乙個軟盤映象boot.img。像作者一樣,現在已經不需要再去購買軟盤,再說就算想買也不一定買得到。本人使用qemu載入軟盤映象,命令 qemu system i386 fda boot.img...