簡體   English   中英

在C中使用BIOS顯示數據

[英]Displaying data using BIOS in C

有什么辦法可以使用c中的bios打印數據。 我知道在匯編中您可以使用int 0x10 ,但是C是否有等效項?

這取決於操作系統是否已經在運行。
如果是,則取決於正在運行的操作系統。 但是通常,如果使用C,則C stdlib應該可用。 因此,請使用printf()和/或stdout ...

如果沒有可用的操作系統,則取決於CPU模式。

如果CPU在實模式下運行,請使用10h BIOS中斷。
您甚至可以在C語言中執行此操作。大多數C編譯器都允許內聯匯編。
例如,對於GCC,請使用__asm關鍵字。

如果處於32位保護模式,則由於BIOS中斷不再可用,因此需要手動管理視頻。

在這種情況下,僅將打印數據寫入包含視頻緩沖區的存儲區。 您需要知道您所處的視頻模式,以便可以正確的格式寫入數據以及內存緩沖區的內存地址是多少。
在這種情況下,只需聲明一個指向存儲區的char指針,然后寫入字符即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM