boot.bin

 org 07c00h   ; 程序会被加载到7c00处,所以需要这一句
 mov ax, cs
 mov ds, ax
 mov es, ax
 Call DispStr   ; 调用显示字符串例程
 jmp $   ; 无限循环
DispStr:
 mov ax, BootMessage
 mov bp, ax   ; ES:BP = 串地址
 mov cx, 16   ; CX = 串长度
 mov ax, 01301h  ; AH = 13h,  AL = 01h
 mov bx, 000ch  ; 页号为0(BH = 0) 黑底红字(BL = 0Ch,高亮)
 mov dl, 0
 int 10h   ; int 10h
 ret
BootMessage:   db    " Hello, OS world!"
 times 510-($-$$) db   0 ;填充剩下的空间,使生成的二进制代码恰好为512字节
 dw  0aa55h   ; 引导扇区需要以55AA结束
posted @ 2006-05-28 23:42  ahuo  阅读(695)  评论(1编辑  收藏  举报