1
我找到了一個編寫bootloader的教程。除了1條線以外,這一切都非常清楚。這是一些代碼。這是爲什麼這個程序集需要
Print:
lodsb
or al, al ;I don't get this line
jz PrintDone
mov ah, 0x0e
int 0x10
jmp Print
它有一些清除int 0x10使用的寄存器的代碼。我唯一不明白的就是or al,al行。如果你自己或者什麼東西,你會得到你開始的對嗎?
如果有人能回答這個問題,我會永遠愛他們:)
如果al爲零,那麼「or」可能確保設置z標誌。它在不修改al的情況下設置z標誌。 Lodsb爲al加載一個值,但不影響零標誌,因此需要另一條指令。 –