我做了这段代码,这应该是简单的操作系统,应该打印“Hello world!”。
bits 16
mov bx,msg
call printstr
printstr:
mov al,byte[bx]
mov ah,0Eh
int 10h
inc bx
cmp byte[bx],0
je end
jmp printstr
end:
jmp end
msg: db "Hello world!",0
times 510-($-$$) db 0
dw 0xaa55
我在 NASM 上组装了它。当我在 QEMU 上运行它时,它会打印一个奇怪的字符和“S”。
我使用这些参数“qemu-system-x86_64 ost.bin”运行 QEMU,其中“ost.bin”是那个文件。有人知道解决方案吗?