引导扇区程序的意外输出

时间:2014-04-14 01:58:34

标签: assembly nasm boot 16-bit

我通过16位引导加载程序编程教自己汇编(NASM),我遇到了一个问题。 我编写了一个程序,它使用函数print来显示“Hello,World!”到了屏幕,但我只得到'U'作为我的输出。

这是集会:

print:
    pusha
    mov ah, 0x0e
    int 0x10
    popa
    ret

mov al, 'H'
call print
mov al, 'e'
call print
mov al, 'l'
call print
mov al, 'l'
call print
mov al, 'o'
call print
mov al, ','
call print
mov al, 'W'
call print
mov al, 'o'
call print
mov al, 'r'
call print
mov al, 'l'
call print
mov al, 'd'
call print
mov al, '!'
call print

jmp $

times 510-($-$$) db 0
dw 0xaa55

我确定这是非常明显或愚蠢的事情,因为我刚开始。 提前谢谢。

0 个答案:

没有答案