一个汇编写的boot程序
Posted 左飞123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个汇编写的boot程序相关的知识,希望对你有一定的参考价值。
;系统引导程序
;nasm boot.asm -o boot.bin
;反汇编
;ndisasm -o 0x7c00 boot.bin >> disboot.asm
;调试程序
nasm boot.asm -o boot.com%define _BOOT_DEBUG_ ;做引导程序将此行注释掉
%ifdef _BOOT_DEBUG_
org 0100h ;调试状态做成.com文件
%else
org 07c00h ;告诉编译器程序加载到7c00处
%endif
mov ax,cs ;
mov ds,ax
mov es,axcall DispStr ;调用显示字符串例程
jmp $ ;无限循环DispStr:
mov ax,BootMessage
mov bp,ax ;es:bp = 串地址
mov cx,16 ;cx = 串长度
mov ax,01301h ;ah = 13,al = 01h
mov bx,000ch ;页号为0(bh = 0) 黑底红字(bl = 0ch,高亮)
mov dl,0
int 10h ;10h号中断
ret
BootMessage: db "Hello, OS world!"
times 510-($-$$) db 0 ;填充剩下的空间,使生成的二进制代码恰好为512字节
dw 0xaa55 ;结束标志
以上是关于一个汇编写的boot程序的主要内容,如果未能解决你的问题,请参考以下文章