开机时ROM,BIOS中的问题

Ponytai1 2016-08-07 05:08:18
这是书上的内容
“当计算机系统上电开机或者按了机箱上的复位按钮时,CPU会自动把代码段寄存器CS设置为0XF000,其段基址被设置为0XFFFF0000,段长度设置为64KB。而IP被设置为0FFF0,因此此时CPU代码指针指向0XFFFFFFF0处,即4GB空间最后一个64KB的最后16字节处。”--赵炯的《Linux内核完全剖析》,18页。

对此我有疑问:
1.
此时如果CS被设置为0XF000,那么段基址应该是0XF0000。
但是上面这段话却说“段基址被设置为0XFFFF0000”。为什么前面会多出FFF?
2.
查阅有关资料有人说,”系统加电后CS全置1,IP全置0。所以系统是由地址0xFFFF0开始执行的”
呢么不是与书上相悖了吗?书上说了加电开机后CS明明是自动置为0XF000呀?

新手望大神帮忙啊
...全文
716 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
BIOS练习工具加BIOS完全手册简介 BIOS是英文"Basic Input Output System"的缩略语,直译过来后文名称就是"基本输入输出系统"。它的全称应该是ROMBIOS,意思是只读存储器基本输入输出系统。其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机上电自检程序和系统启动自举程序。 其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。BIOS设置程序是储存在BIOS芯片的,只有在开机才可以进行设置。CMOS主要用于存储BIOS设置程序所设置的参数与数据,而BIOS设置程序主要对技巧的基本输入输出系统进行管理和设置,使系统运行在最好状态下,使用BIOS设置程序还可以排除系统故障或者诊断系统问题。 有人认为既然BIOS是"程序",那它就应该是属于软件,感觉就像自己常用的Word或Excel。但也很多人不这么认为,因为它与一般的软件还是有一些区别,而且它与硬件的联系也是相当地紧密。形象地说,BIOS应该是连接软件程序与硬件设备的一座"桥梁",负责解决硬件的即要求。主板上的BIOS芯片或许是主板上唯一贴有标签的芯片,一般它是一块32针的双列直插式的集成电路,上面印有"BIOS"字样。586以前的BIOS多为可重写EPROM芯片,上面的标签起着保护BIOS内容的作用(紫外线照射会使EPROM内容丢失),不能随便撕下。586以后的ROM BIOS多采用EEPROM(电可擦写只读ROM),通过跳线开关和系统配带的驱动程序盘,可以对EEPROM进行重写,方便地实现BIOS升级。 计算机用户在使用计算机的过程,都会接触到BIOS,它在计算机系统起着非常重要的作用。一块主板性能优越与否,很大程度上取决于主板上的BIOS管理功能是否先进。 BIOS芯片是主板上一块长方型或正方型芯片,BIOS主要存放: 自诊断程序:通过读取CMOS RAM的内容识别硬件配置,并对其进行自检和初始化; CMOS设置程序:引导过程,用特殊热键启动,进行设置后,存入CMOS RAM; 系统自举装载程序:在自检成功后将磁盘相对0道0扇区上的引导程序装入内存,让其运行以装入DOS系统; 主要I/O设备的驱动程序和断服务; 由于BIOS直接和系统硬件资源打交道,因此总是针对某一类型的硬件系统,而各种硬件系统又各有不同,所以存在各种不同种类的BIOS,随着硬件技术的发展,同一种BIOS也先后出现了不同的版本,新版本的BIOS比起老版本来说,功能更强。

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧