• 主引导扇区


    硬盘0面,0道,1扇区,供512个字节,称为主引导扇区。

    如果计算机是设置为从硬盘启动,

    那么,BIOS将完成基本工作前要做的最后一件事,就是读取引导扇区,并将它加载到内存地址0x0000:0x7c00处(也就是物理地址0x07c00),

    然后一个jmp指令跳转到该地址处,接着执行。

    但是!!!引导扇区必须是有效的才行!!!

    一个有效的主引导扇区,最后两个字节必须为0x55,0xAA。

    书作者说不知道为什么是要加载到0x07c00这个地址,我也不知道。。。

    一般来说,主引导扇区是由操作系统负责的,

    正常情况下,一段精心编写的主引导扇区代码,将检测用来启动计算机的操作系统,并计算出它所在的硬盘位置,

    然后它把操作系统的自举代码加载到内存,也用jmp指令跳转到那里继续执行,知道操作系统完全启动,

    主引导扇区示例代码:

    ; 4-2.asm
    mov ax,0xb800
    mov ds,ax
    
    mov byte [0x00],'a'
    mov byte [0x02],'s'
    mov byte [0x04],'m'
    
    jmp $
    times 510-($-$$) db 0
    db 0x55,0xaa
    ;最后两行必须有,一个负责填充,一行负责有效性检验使用
    ;书上给的代码没有最后两行

    -----------------------------------------------------

    书4.1.5 一切从主引导扇区开始

    书5.2 欢迎来到住引导扇区

  • 相关阅读:
    Chapter 2 Open Book——14
    数据结构和算法[精选]----说明一下这个分类之后的作用
    Chapter 2 Open Book——13
    Chapter 2 Open Book——12
    myeclipse中打开java文件中文乱码
    div+css与table布局
    docker入门实战笔记
    docker常用命令
    ignite学习笔记
    java代码如何发送QQ邮件
  • 原文地址:https://www.cnblogs.com/a-s-m/p/12753138.html
Copyright © 2020-2023  润新知