8086的启动过程
发布日期:2021-07-01 04:24:06
浏览次数:2
分类:技术文章
本文共 694 字,大约阅读时间需要 2 分钟。
文章目录
1 8086的启动过程
1.1 8086启动时的寄存器情况
8086处理器在启动或者重启的时候,会对寄存器执行一个初始化的操作。初始化后的寄存器信息如下:
CS:FF FF,其它的寄存器:00 00
。 1.2 BIOS
我们知道8086处理器一共有20根地址线,那么其访问空间就是1MB,如下:
最顶端的ROM(Read-Only Memory,只读存储器)中固化有我们的BIOS(Basic Input Output System,基本输入输出系统)。上电后CPU就会执行地址为0xFFFF0处的代码,但是我们可以这里距离顶端只有16个字节,所以可执行的代码是非常有限的。所以,这个地址处存放的是一条跳转指令,跳转指令的内容如下:
jmp F000:005C
注意,上面的代码执行完毕会将CS的值设置为F000,IP的值设置为005C。也就是说处理器会去F005C的地方去执行指令。
1.3 8086启动的整体流程
-
启动重启计算机,寄存器被初始化
CS:FFFF IP:0000 -
FFFF0—> jmp F000:005C
CS:F000 IP:005C -
F005C—>依次执行BIOS中的指令
-
BIOS所做的最后一件事:将主引导扇区中(0面0道1扇区,最后两个字节为硬盘主引导扇区的有效标志,必须为0x55,0xaa)的内容加载到7C00的位置处。
-
BIOS的最后一条指令:JMP 0000:7C00
CS:0000 IP:7C00 -
07C00—>执行主引导扇区中的指令
1)加载操作系统自举代码到内存中 2)通过一条跳转指令,使处理器去执行操作系统的自举代码
参考资料:
转载地址:https://muzimin.blog.csdn.net/article/details/103756622 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月25日 12时28分42秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
配置Lotus Domino集群视频详解
2019-05-01
Linux软件万花筒
2019-05-01
全球开源软件发展趋势分析
2019-05-01
Linux常用的安全工具
2019-05-01
python 多进程之进程池的操作
2019-05-01
flask整理之 flask程序中的debug模式
2019-05-01
比特币,父母这一辈能接受吗?
2019-05-01
SnapEx的新感觉,对新手很友好
2019-05-01
首个聚合器怎么产生的,并运用领域在什么
2019-05-01
区块链技术应用,最先医疗行业
2019-05-01
新币上市旧币会降价吗
2019-05-01
当博士进入币圈会怎么样
2019-05-01
《增长黑客》(肖恩·艾利斯)学习笔记——第二部分 实战
2019-05-01
python使用HTMLTestRunner查看运行函数
2019-05-01
linux下安装jenkins+git+python
2019-05-01
解决uiautomatorviewer中添加xpath的方法
2019-05-01
性能测试的必要性评估以及评估方法
2019-05-01
Spark学习——利用Mleap部署spark pipeline模型
2019-05-01
Oracle创建表,修改表(添加列、修改列、删除列、修改表的名称以及修改列名)
2019-05-01