【发布时间】:2017-06-14 17:52:32
【问题描述】:
我使用汇编语言设计了我的自定义引导加载程序(仅显示我的名字。)并使用 NASM 编译它。现在我想将它安装在 USB 中。但找不到任何方法来刻录它。我已经使用 ISOtoUSB、通用 USB、rufus 等不同的实用程序进行了测试。错误来了'图像不可启动。'
但是当我在 oracle 虚拟驱动器上运行相同的程序时,它可以完美运行。
我正在做一些大学项目并且很震惊,我想将该引导加载程序加载到 USB 并且当我从 USB 引导时,我的引导加载程序应该可以工作。
有什么想法吗?
这是我的代码:
[BITS 16]
[ORG 0x7C00]
main:
mov ax, 0x0000
mov ds,ax
mov si, string
call print
jmp $
print:
mov ah,0x0E
mov bh,0x00
.nextchar
lodsb
or al,al
jz .return
int 0x10
jmp .nextchar
.return
ret
string db 'Welcome to the Amul Bhatia Operating System Now Installing....',0
times 510-($-$$) db 0
dw 0AA55h
【问题讨论】:
-
也许你忘了包含启动签名,如果你不显示代码很难判断。看?你忘了。
-
@Jester - 刚刚添加了代码,你现在可以检查一下.. i
-
是的,我有,您没有在扇区末尾包含
55 AA所需的引导签名。 -
我很感激,如果你能帮忙..如何添加 55 AA,我按照 youtube 上的一个教程.. 我不知道,,
-
你把512改成510了吗?此外,这是一个引导扇区,它不会显示为文件。
标签: assembly x86 bootloader