Chapter 10 Initialization

10章 初始化

After a signal on the RESET pin, certain registers of the 80386 are set to predefined values. These values are adequate to enable execution of a bootstrap program, but additional initialization must be performed by software before all the features of the processor can be utilized.

在REST引脚发送信号后,80386的某些寄存器被设置为预定的值。这些值仅够用来执行启动(bootstrap)程序,但在所有的处理器特性可以被使用这衫,还必须由软件执行额外的初始化。

10.1 Processor State After Reset 

重置后的处理器状态

The contents of EAX depend upon the results of the power-up self test. The self-test may be requested externally by assertion of BUSY# at the end of RESET. The EAX register holds zero if the 80386 passed the test. A nonzero value in EAX after self-test indicates that the particular 80386 unit is faulty. If the self-test is not requested, the contents of EAX after RESET is undefined.

EAX的内容取决于加电自检的结果。自检可以由外部要求,即在REST之后测试BUSY#。如果80386通过了自检,EAX中的值是0。自检后的非0值表明,80386的特定单元有错误。如果没有要求自检,REST之后的EAX中的值是未定义的。

DX holds a component identifier and revision number after RESET as Figure 10-1 illustrates. DH contains 3, which indicates an 80386 component. DL contains a unique identifier of the revision level.

REST之后,DX中值是组件的标识和版本号,见图10-1的解释。DH中包含3位80386的组件标识。DL中包含一个唯一的版本标识。

Control register zero (CR0) contains the values shown in Figure 10-2 . The ET bit of CR0 is set if an 80387 is present in the configuration (according to the state of the ERROR# pin after RESET). If ET is reset, the configuration either contains an 80287 or does not contain a coprocessor. A software test is required to distinguish between these latter two possibilities.

控制寄存器0(CR0)包含一个图10-2所示的值。如果配置(根据在REST之后,ERROR#的状态)中存在80387,则CR0的ET位被置位。如果ET被重置,配置要么包含一个80287,要么不包含协处理器。软件要通过测试来区分这二者的可能性。

The remaining registers and flags are set as follows:

剩余的寄存器和标志被设置成如下所示:

EFLAGS             =00000002H

IP                 =0000FFF0H // 这里是BIOS开始的地方

CS selector        =000H

DS selector        =0000H

ES selector        =0000H

SS selector        =0000H

FS selector        =0000H

GS selector        =0000H

IDTR:

base    =0

limit   =03FFH

All registers not mentioned above are undefined.

所有上面没有提到的寄存器都是未定义状态。

These settings imply that the processor begins in real-address mode with interrupts disabled.

这些设置表明,处理器开始在关中断的实地址模式。

最新文章

  1. PAT mooc DataStructure 4-2 SetCollection
  2. 前端开发薪资之各地区对比(图文分析)(share)
  3. sql boolean类型
  4. [MOSEK] Mosek求解中遇到的奇葩内存问题
  5. zookeeper节点数与watch的性能测试
  6. mvc 微软票据验证
  7. 基于RSA securID的Radius二次验证java实现(PAP验证方式)
  8. HDU 2255 奔小康赚大钱 KM算法的简单解释
  9. (三十一)PickerView自定义视图
  10. andorid简易定位
  11. celery(一) application
  12. SourInsight4 配置视野内引用高亮
  13. csharp: Use of Is and As operators in csharp
  14. C# 随机四位数验证码
  15. nyoj 1274信道安全 第九届河南省赛(SPFA)
  16. 第二个Sprint冲刺第二天(燃尽图)
  17. P2865 [USACO06NOV]路障Roadblocks
  18. 价格战拉上了Android平板电脑
  19. rhel6.3-64 yum问题
  20. eclipse删除的文件如何恢复。

热门文章

  1. java定时器2-spring实现
  2. Get started with Sourcetree
  3. Jquery与Dom对象相互转化
  4. 【POJ 3107】 Godfather
  5. Java Socket通信读取相关信息代码
  6. bzoj 4385: [POI2015]Wilcze doły【单调栈】
  7. codeforces912E(折半搜索+双指针+二分答案)
  8. [App Store Connect帮助]八、维护您的 App(6)使某个先前版本不可下载
  9. RabbitMQ学习之HelloWorld(1)
  10. VS2010创建C++静态链接库创建和使用