首先,編輯檔案 boot.asm:
org 07c00h ; 告訴編譯器程式載入到 7c00
mov ax, cs
mov ds, ax
mov es, ax
call DispStr
jmp $ ; 無限迴圈
DispStr:
mov ax, BootMessage
mov bp, ax
mov cx, 16
mov ax, 01301h
mov bx, 000ch
mov dl, 0
int 10h
ret
BootMessage: db "Hello, OS world!"
times 510-($-$$) db 0
dw 0xaa55
註,開機磁區之限制:
- 少於512位元組
- 以0xAA55結束
編譯 boot.asm:
nasm boot.asm -o boot.bin
寫入開機磁區資料為印象檔(Image)
dd if=boot.bin of=boot.img bs=512 count=1 conv=notrunc
留言
張貼留言