开机时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呀?

新手望大神帮忙啊
...全文
717 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

4,436

社区成员

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

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