我目前正在開發一個 bios 引導加載程式,并且我對匯編比較新,我一直在閱讀它,我了解它是如何作業的,但是有些事情我不明白,涉及我的匯編代碼的執行順序。
所以基本上我的子程式 _print 是如何被呼叫的,即使我沒有呼叫它。其次,如果檔案末尾一直如此,即使我沒有到達,它如何分配 bios 幻數。
我會很感激任何幫助,謝謝。
[ORG 0000:7C00]
global _start
_print:
mov ah, 0x0e
mov al, '['
int 0x10
mov al, ' '
int 0x10
mov al, '['
int 0x10
ret
_start:
jmp $
times 510 - ($-$$) db 0
dw 0xAA55
uj5u.com熱心網友回復:
與作業系統運行的可執行檔案不同,引導扇區無法指定任意入口點。它總是從第一條指令開始。所以_start標簽不能作為指定從哪里開始的方式。你必須把代碼放在第一位。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/406282.html
標籤:
上一篇:如何在MIPS中釋放堆記憶體
下一篇:以實模式訪問pci配置空間
