2014-09-24 143 views
0

我正在努力爲教育目的開發我自己的基本內核。我正在讀英特爾80386並閱讀有關中斷0: - 除以零例外。intel 80386在哪裏保存寄存器?

在那裏,它被寫: - CS和EIP的

保存的指令指針 保存寄存器內容指向該產生的異常的指令。

我的問題是這些寄存器保存在哪裏。怎樣才能訪問這些寄存器?

+0

他們進入堆棧。 – 2014-09-24 18:57:44

+0

好的,謝謝,但他們按順序進入堆棧? – 2014-09-24 18:58:29

回答

3

中斷將堆棧上的EFLAGS,CS和EIP寄存器(按此順序)的當前內容壓入。對於一些例外情況,CPU在EIP之後推送一個錯誤代碼,但不是零分隔。

如果你開發自己的內核,你應該看看Intel Software Developer Manual。有關於中斷和例外的章節(實際版本爲6.4),這包括完整描述什麼時候被推送。