2
A
回答
2
你的堆棧段寄存器最好有一個有效的值,當你調用一個軟件中斷(或進行任何呼叫),因爲int
(或call
)指令需要在其中存儲有效棧代碼的返回地址。另外,被調用的子程序通常期望有一個有效的堆棧,它可以在某些寄存器中執行其工作。實際上,您的堆棧段寄存器在任何時候都有更好的有效值,否則一旦發生第一個週期性中斷,一切都會崩潰並燒燬。
相關問題
- 1. Bios INT 13h!需要幫助
- 2. 使用Int 13H讀取磁盤參數
- 3. 程序集中斷問題:int 13h(ah = 42h)返回cf = 1失敗,ah = 1
- 4. BIOS INT13h AH = 42h與BOCHS
- 5. 程序集INT 13h - 讀取磁盤問題
- 6. 如何在硬盤與BIOS寫中斷13H
- 7. 在程序集中設置堆棧段和偏移量
- 8. INT 10H 13H BIOS字符串輸出不工作
- 9. 堆棧段
- 10. OS building int 13h ah = 3(hex)cf打開並且變成B(十六進制)或12(十進制)
- 11. INT 13h - 擴展閱讀 - DAPS故障
- 12. BIOS閱讀板塊
- 13. ubuntu內核,INT 13H中斷,文件系統寫入
- 14. 簡單的引導程序無法在真機上讀取int 13h的扇區
- 15. C++(GCC):未定義的引用`堆棧<int> ::堆棧(INT)」
- 16. int 13h在Windows保護模式下?
- 17. MASM中沒有堆棧段警告
- 18. BIOS如何從軟盤和CD-ROM啓動不同?
- 19. Java掃描儀讀取從鍵盤和存儲在堆棧中的行
- 20. JVM - 堆棧和堆棧
- 21. 如何讀取調用堆棧?
- 22. 在堆棧視圖中讀取文本字段
- 23. 把片段堆棧
- 24. 片段堆棧Android
- 25. 堆棧溢出Marshal.PtrToStructure讀取wmv文件
- 26. Linux工具讀取堆棧的值
- 27. Java線程從共享堆棧陣列讀取和寫入
- 28. 編輯BIOS允許更快的讀取鍵盤
- 29. 堆棧幀和堆棧指針
- 30. 微軟藍牙堆棧進入Widcomm藍牙堆棧?
謝謝〜我理解初始化堆棧段的重要性。什麼是'第一次定期中斷'? – sam 2012-01-01 09:50:20
如果我沒有初始堆棧段,我可以使用多大堆棧?我可以爲堆疊段設置多大? – sam 2012-01-01 09:52:02
IBM PC有一個週期性中斷控制器芯片,它定期產生硬件中斷。 (每秒約50次)發生其中一箇中斷時,必須有一個有效的堆棧,否則會發生崩潰。這就是爲什麼我們在處理堆棧段寄存器或堆棧指針寄存器之前始終禁止中斷('cli'),並在之後重新啓用它們('sti')的原因。 – 2012-01-01 09:55:22