码迷,mamicode.com
首页 > 其他好文 > 详细

X86系统启动

时间:2015-07-18 09:31:17      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:

BIOS找到以0X55AA结束的512Byte扇道,把此512字节内容加载到起始地址为07c00h的内存,然后BIOS把控制权限这段内存中的程序了。这段程序就是系统的开始了。

最简单的系统:

    ;org 0100h   ;调试用
    org 07c00h  ;最终留下
    mov ax, cs
    mov ds, 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

  用NASM编译出bin文件后,用visual box软驱加载此bin文件,可以看见hello world了:

技术分享

 

可以认为,一个世界上最小的系统已经起来了

 

X86系统启动

标签:

原文地址:http://www.cnblogs.com/souroot/p/4656173.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!