计算机启动过程

来源:互联网 发布:淘宝等级在哪里查看 编辑:程序博客网 时间:2024/05/18 01:11

       对Intel8086加电或复位的时候,CS=0xFFFF,IP=0x0000,处理机执行指令的时候是从低地址到高地址,这个地址距离内存顶部0xFFFFF,只差16个字节,要是IP值超过0x000F,它与CS形成的物理地址就会因为溢出,而变回0x0001;

      所以在这个地址(CS=0xFFFF,IP=0x0000),一般是一条跳转指令,让指针指向低地址,有更多的空间来执行指令;一个典型的指令是 jmp 0xF000:0xe05b;这个指令会改变CS的值为0xF000,IP的值为0xe05b;

      处理器将从新地址(0xFE05B)重新获取指令开始执行,主要进行 硬件的诊断,检测和初始化工作。

      当执行完该做的工作时,最后一件事就是从外存储设备读取更多的指令来交给处理器执行。

      如果计算机是从硬盘开始启动,则基本输入输出系统则会读取硬盘的主引导扇区(0面0道1扇区), 将它载到内存地址(0x07c00)中执行;然后执行一个跳转指令 jmp 0x0000:0x7c00 跳到那里执行

0 0
原创粉丝点击