《微处理器基础知识.ppt》由会员分享,可在线阅读,更多相关《微处理器基础知识.ppt(79页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、微处理器基础知识微处理器基础知识现在学习的是第1页,共79页第第2 2章章 微处理器的基础知识微处理器的基础知识2.1 Intel2.1 Intel公司公司8080 x86x86系列微处理器简介系列微处理器简介2.2 2.2 程序可见寄存器组程序可见寄存器组2.3 2.3 存储器存储器2.4 2.4 PCPC机操作系统的发展机操作系统的发展2.5 2.5 DOSDOS内存布局内存布局2.6 2.6 外部设备及外部设备及I/OI/O地址空间地址空间2.7 2.7 汇编语言概述汇编语言概述现在学习的是第2页,共79页2.1 Intel2.1 Intel公司公司8080 x86x86系列微处理器简介
2、系列微处理器简介IntelIntelIntelIntel公司公司公司公司80808080 x86x86系列微处理器系列微处理器系列微处理器系列微处理器 自上世纪自上世纪自上世纪自上世纪70707070年代开始出现微型计算机以来,年代开始出现微型计算机以来,年代开始出现微型计算机以来,年代开始出现微型计算机以来,CPUCPUCPUCPU经历了经历了经历了经历了飞速的发展,飞速的发展,飞速的发展,飞速的发展,1971197119711971年,年,年,年,IntelIntel设计成功了第一片设计成功了第一片设计成功了第一片设计成功了第一片4 4 4 4位微处位微处位微处位微处理器理器理器理器Int
3、el 4004Intel 4004Intel 4004Intel 4004;随之又设计生产了;随之又设计生产了;随之又设计生产了;随之又设计生产了8 8 8 8位微处理器位微处理器位微处理器位微处理器8008800880088008;1973197319731973年推出了年推出了年推出了年推出了8080808080808080;1974197419741974年基于年基于年基于年基于8080808080808080的个人计算机的个人计算机的个人计算机的个人计算机(PCPCPCPC)问世,)问世,)问世,)问世,MicrosoftMicrosoft公司的创始人公司的创始人公司的创始人公司的创始
4、人Bill GatesBill Gates为这为这为这为这种种种种PCPCPCPC开发了开发了开发了开发了BASICBASICBASICBASIC语言解释程序;语言解释程序;语言解释程序;语言解释程序;1977197719771977年年年年IntelIntelIntelIntel推出了推出了推出了推出了8085808580858085。自此之后,又陆续推出了。自此之后,又陆续推出了。自此之后,又陆续推出了。自此之后,又陆续推出了8086808680868086、80386803868038680386、PentiumPentiumPentiumPentium等等等等80808080X86X8
5、6X86X86系列微处理器。系列微处理器。现在学习的是第3页,共79页1.161.161.161.16位位位位CPUCPUCPUCPU8086808680868086、8088808880888088、80286 80286 80286 80286 2.322.322.322.32位位位位CPUCPUCPUCPU80386803868038680386、80486 80486 80486 80486 3.3.3.3.准准准准64646464位位位位CPUCPUCPUCPUPentiumPentiumPentiumPentium、PPPP、PPPP、P P P P 4.644.644.644.6
6、4位位位位CPUCPUCPUCPUItanium Itanium Itanium Itanium Intel Intel 陆续推出的陆续推出的8080 x86x86系列处理器的性能系列处理器的性能和功能越来越强。但是,从汇编语言程序设计和功能越来越强。但是,从汇编语言程序设计人员面对这些人员面对这些CPUCPU的软件体系结构角度来看,的软件体系结构角度来看,80868086建立的实模式和建立的实模式和8038680386建立的保护模式模型建立的保护模式模型到目前为止一直适用。因此,后边介绍的实模到目前为止一直适用。因此,后边介绍的实模式编程以式编程以80868086为例说明,保护模式编程以为例
7、说明,保护模式编程以8038680386为例说明。为例说明。现在学习的是第4页,共79页CPU数数据据总总线宽线宽度度地址总地址总线宽度线宽度寻址寻址能力能力工作模式工作模式808616201MB字节字节实模式实模式80888201MB字节字节实模式实模式80286162416MB字节字节实模式、保护模式实模式、保护模式80386SX162416MB字节字节实模式、保护模式实模式、保护模式80386DX32324GB字节字节实模式、保护模式实模式、保护模式80486DX32324GB字节字节实模式、保护模式实模式、保护模式Pentium643664GB实模式、保护模式实模式、保护模式Intel
8、80 x86Intel80 x86Intel80 x86Intel80 x86系列微处理器系列微处理器系列微处理器系列微处理器 现在学习的是第5页,共79页三种运行模式从从8038680386开始,开始,IntelIntel的的CPUCPU具有具有3 3种运行模式:种运行模式:实模式、保护模式和虚拟实模式、保护模式和虚拟80868086模式。模式。CPUCPU的的3 3种运种运行模式及其转换关系如图行模式及其转换关系如图2-12-1所示。所示。实模式实模式保护模式保护模式虚拟虚拟8086模式模式Reset复位复位Reset复位、修改复位、修改CR0LMSW指令、修改CR0中断或异常中断或异常I
9、RETD指令、任务转换指令、任务转换Reset复位复位现在学习的是第6页,共79页1.1.实模式实模式 CPUCPU复位(复位(ResetReset)或加电()或加电(Power OnPower On)的时)的时候以实模式启动,处理器以实模式工作。在实候以实模式启动,处理器以实模式工作。在实模式下,内存寻址方式和模式下,内存寻址方式和80868086相同,由相同,由1616位段位段寄存器的内容乘以寄存器的内容乘以1616当做基地址,加上当做基地址,加上1616位偏位偏移地址形成移地址形成2020位的物理地址。在实模式下,所位的物理地址。在实模式下,所有的段都是可以读、写和可执行的。有的段都是可
10、以读、写和可执行的。现在学习的是第7页,共79页2.2.2.2.保护模式保护模式保护模式保护模式 在保护模式下,在保护模式下,在保护模式下,在保护模式下,CPUCPUCPUCPU提供了多任务、内存分段分页管提供了多任务、内存分段分页管提供了多任务、内存分段分页管提供了多任务、内存分段分页管理和特权级保护等功能,这些功能是理和特权级保护等功能,这些功能是理和特权级保护等功能,这些功能是理和特权级保护等功能,这些功能是Windows/LinuxWindows/LinuxWindows/LinuxWindows/Linux等现等现等现等现代操作系统的基石。如果没有代操作系统的基石。如果没有代操作系统
11、的基石。如果没有代操作系统的基石。如果没有CPUCPU的支持,操作系统的的支持,操作系统的许多功能根本无法实现。例如,在实模式下,应用程许多功能根本无法实现。例如,在实模式下,应用程序可以执行任何的序可以执行任何的CPUCPU指令,读写所有的内存,指令,读写所有的内存,指令,读写所有的内存,指令,读写所有的内存,DOSDOSDOSDOS操作操作操作操作系统就不能控制应用程序的行为,应用程序可以做任何系统就不能控制应用程序的行为,应用程序可以做任何系统就不能控制应用程序的行为,应用程序可以做任何系统就不能控制应用程序的行为,应用程序可以做任何事情,没有任何限制。而在保护模式下,通过设置特权事情,
12、没有任何限制。而在保护模式下,通过设置特权事情,没有任何限制。而在保护模式下,通过设置特权事情,没有任何限制。而在保护模式下,通过设置特权级和内存的分段分页,应用程序只能读写属于它自己的级和内存的分段分页,应用程序只能读写属于它自己的级和内存的分段分页,应用程序只能读写属于它自己的级和内存的分段分页,应用程序只能读写属于它自己的内存空间,而不能破坏其他应用程序和操作系统。内存空间,而不能破坏其他应用程序和操作系统。内存空间,而不能破坏其他应用程序和操作系统。内存空间,而不能破坏其他应用程序和操作系统。现在学习的是第8页,共79页实实模模式式下下没没有有特特权权级级的的概概念念,相相当当于于所所
13、有有的的指指令令都都工工作作在在特特权权级级0 0,即即最最高高的的特特权权级级。它它可可以以执执行行所所有有特特权权指指令令,包包括括读读写写控控制制寄寄存存器器CR0CR0等等。Windows/LinuxWindows/Linux操操作作系系统统就就是是通通过过在在实实模模式式下下初初始始化化控控制制寄寄存存器器、GDTRGDTR、LDTRLDTR、IDTRIDTR、TRTR等等寄寄存存器器以以及及页页表表,然然后后再再通通过过置置CR0CR0的的保保护护模模式位(式位(PEPE位)为位)为1 1而进入保护模式的。而进入保护模式的。实实模模式式下下不不支支持持硬硬件件上上的的多多任任务务切
14、切换换,所所有有的指令都在同一个环境下执行。的指令都在同一个环境下执行。现在学习的是第9页,共79页保护模式下提供的主要功能有:保护模式下提供的主要功能有:段的大小可以设置为段的大小可以设置为4 4 GBGB,段内的偏移量为,段内的偏移量为3232位。位。特权级保护。特权级保护。支持内存分页机制,支持虚拟内存。支持内存分页机制,支持虚拟内存。支持多任务。支持多任务。现在学习的是第10页,共79页3.3.虚拟虚拟8686模式模式 虚拟虚拟8686模式是以任务形式在保护模式下执行模式是以任务形式在保护模式下执行的,在的,在CPUCPU上可以同时支持由多个真正的上可以同时支持由多个真正的CPUCPU
15、任任务和多个虚拟务和多个虚拟8686任务。在虚拟任务。在虚拟8686模式下,模式下,CPUCPU支持任务切换和内存分页。支持任务切换和内存分页。现在学习的是第11页,共79页2.2 2.2 程序可见寄存器组程序可见寄存器组 程序可见寄存器组包括多个程序可见寄存器组包括多个8 8位、位、1616位和位和3232位寄存器,如位寄存器,如图图所示。阴影部分只对所示。阴影部分只对8038680386(含(含8038680386)以上)以上CPUCPU有效。有效。1 1通用寄存器通用寄存器2 2段寄存器段寄存器 3 3控制寄存器控制寄存器 现在学习的是第12页,共79页8086Pentium CPU程序
16、可见寄存器组程序可见寄存器组16151615CHCLCHCL(AH)AX(AL)AH)AX(AL)EAXEAX EBXEBX(CH)CX(CL)CH)CX(CL)ECXECX(DH)DX(DL)DH)DX(DL)EDXEDX 位位位位0087873131AHALAHALSPSP ESPESPAHALAHALBPBP EBPEBPAHALAHAL SISI ESIESI DIDI EDIEDI IPIP EIPEIP(BH)BX(BL)BH)BX(BL)FLAGSFLAGS数据寄存器数据寄存器数据寄存器数据寄存器堆栈指针堆栈指针堆栈指针堆栈指针基址指针基址指针基址指针基址指针源变址源变址源变址源
17、变址目的变址目的变址目的变址目的变址指令指针指令指针指令指针指令指针标志标志标志标志指针寄存器指针寄存器指针寄存器指针寄存器变址寄存器变址寄存器变址寄存器变址寄存器控制寄存器控制寄存器控制寄存器控制寄存器 通通通通用用用用寄寄寄寄存存存存器器器器 FLAGSFLAGS GS GS GS GS CS CS CS CS SS SS SS SS DS DS DS DS ES ES ES ES FS FS FS FS 代码段寄存器代码段寄存器代码段寄存器代码段寄存器堆栈段寄存器堆栈段寄存器堆栈段寄存器堆栈段寄存器数据段寄存器数据段寄存器数据段寄存器数据段寄存器附加段寄存器附加段寄存器附加段寄存器附加段
18、寄存器段寄存器段寄存器段寄存器段寄存器现在学习的是第13页,共79页 FLAGSFLAGS1615CHCLCHCL(AH)AX(AL)AH)AX(AL)EAXEAX EBXEBX(CH)CX(CL)CH)CX(CL)ECXECX(DH)DX(DL)DH)DX(DL)EDXEDX 位位08731AHALAHALSPSP ESPESPAHALAHALBPBP EBPEBPAHALAHALSISI ESIESIDIDI EDIEDIIPIP EIPEIP(BH)BX(BL)BH)BX(BL)FLAGSFLAGS数据寄存器数据寄存器数据寄存器数据寄存器堆栈指针堆栈指针堆栈指针堆栈指针基址指针基址指针基
19、址指针基址指针源变址源变址源变址源变址目的变址目的变址目的变址目的变址指令指针指令指针指令指针指令指针标志标志标志标志指针寄存器指针寄存器指针寄存器指针寄存器变址寄存器变址寄存器变址寄存器变址寄存器控制寄存器控制寄存器控制寄存器控制寄存器 通通通通用用用用寄寄寄寄存存存存器器器器现在学习的是第14页,共79页 GS GS CS CS SS SS DS DS ES ES FS FS 代码段寄存器代码段寄存器代码段寄存器代码段寄存器堆栈段寄存器堆栈段寄存器堆栈段寄存器堆栈段寄存器数据段寄存器数据段寄存器数据段寄存器数据段寄存器附加段寄存器附加段寄存器附加段寄存器附加段寄存器段寄存器段寄存器现在学习
20、的是第15页,共79页1通用寄存器通用寄存器 数据寄存器数据寄存器四个四个1616位寄存器:位寄存器:AXAX、BXBX、CXCX、DXDX。八个八个8 8位寄存器:位寄存器:AHAH、ALAL、BHBH、BLBL、CHCH、CLCL、DHDH、DLDL。四个四个3232位寄存器(位寄存器(386386以上):以上):EAXEAX、EBXEBX、ECXECX、EDXEDX。现在学习的是第16页,共79页 指针寄存器指针寄存器堆栈指针寄存器堆栈指针寄存器SPSP、ESPESP(386386以上)以上)功功能能:存存放放当当前前堆堆栈栈段段栈栈顶顶偏偏移移量量,总总是与是与SSSS堆栈段寄存器配合
21、存取堆栈中的数据。堆栈段寄存器配合存取堆栈中的数据。说明:实模式使用说明:实模式使用SP,SP,保护模式使用保护模式使用ESPESP。现在学习的是第17页,共79页基址指针寄存器基址指针寄存器:BPBP、EBPEBP(386386以上)以上)功功能能:存存放放地地址址的的偏偏移移量量部部分分或或数数据据。若若存存放偏移量时,缺省情况与放偏移量时,缺省情况与SSSS配合。配合。说明:实模式使用说明:实模式使用BPBP。保护模式使用。保护模式使用EBPEBP现在学习的是第18页,共79页变变址址寄寄存存器器:SISI、DIDI、ESIESI(386386以以上上)、EDIEDI(386386以上)
22、以上)功功能能:存存放放地地址址的的偏偏移移量量部部分分或或数数据据。若若存存放放偏移量时,缺省情况与偏移量时,缺省情况与DSDS配合。配合。说明:实模式使用说明:实模式使用SISI、DIDI。保护模式使用保护模式使用ESIESI、EDIEDI。现在学习的是第19页,共79页注意:注意:除除SPSP、ESPESP堆堆栈栈指指针针不不能能随随意意修修改改、需需要要慎慎用用外外,其其他他通通用用寄寄存存器器都都可可以以直直接接在在指指令令中中使使用用,用用以以存存放放操操作作数数,这这是是它它们们的的通通用用之之处处。其其他他专专用用用用途途在在具具体体指指令令中中介介绍。绍。现在学习的是第20页
23、,共79页2 2段寄存器段寄存器简简介介:IBM IBM PCPC机机的的存存储储器器采采用用分分段段管管理理方方法法组组织织,因因此此一一个个物物理理地地址址用用段段基基址址和和偏偏移移量量表表示示。一个程序可以由多个段组成。一个程序可以由多个段组成。段段寄寄存存器器功功能能:段段寄寄存存器器存存放放段段基基址址。在在实实模模式式下下存存放放段段基基地地址址,在在保保护护模模式式下下存存放放段段选选择子。择子。现在学习的是第21页,共79页2 2 2 2段寄存器(续)段寄存器(续)段寄存器(续)段寄存器(续)代代码码段段寄寄存存器器CSCS:指指定定当当前前代代码码段段,代代码码段段中存放当
24、前正在运行的程序段。中存放当前正在运行的程序段。堆栈段寄存器堆栈段寄存器SSSS:指定当前堆栈段。指定当前堆栈段。说说明明:堆堆栈栈段段是是在在内内存存开开辟辟的的一一块块特特殊殊区区域域,其其中中的的数数据据访访问问原原则则是是后后进进先先出出(LIFOLIFO),允允许许插插入入和和删删除除的的一一端端叫叫做做栈栈顶顶。IBM IBM PCPC机机中中SPSP(或(或ESPESP)指向栈顶,)指向栈顶,SSSS指向堆栈段基地址。指向堆栈段基地址。现在学习的是第22页,共79页数数据据段段寄寄存存器器DSDS:指指定定当当前前运运行行程程序序所所使使用的数据段。用的数据段。附附加加数数据据段
25、段寄寄存存器器ESES:指指定定当当前前运运行行程程序序所所使使用的附加数据段。用的附加数据段。段段寄寄存存器器FSFS和和GSGS:指指定定当当前前运运行行程程序序的的另另外外两两个个存存放放数数据据的的存存储储段段(只只对对8038680386以以上上机机器器有有效效)。现在学习的是第23页,共79页说明:说明:虽然虽然DSDS、ESES、FSFS、GSGS(甚至于(甚至于CSCS、SSSS)所指)所指定的段中都可以存放数据,但定的段中都可以存放数据,但DSDS是主要的数据是主要的数据段寄存器,在默认情况下使用段寄存器,在默认情况下使用DSDS所指向段的数所指向段的数据。若要引用其他段中的
26、数据,通常需要显式据。若要引用其他段中的数据,通常需要显式说明。说明。现在学习的是第24页,共79页3 3控制寄存器控制寄存器 控控制制寄寄存存器器包包括括指指令令指指针针寄寄存存器器和和标标志志寄寄存存器。器。注意:注意:在程序中不能直接引用控制寄存器名。在程序中不能直接引用控制寄存器名。现在学习的是第25页,共79页指令指针寄存器指令指针寄存器IPIP、EIPEIP(386386以上)以上)功能功能总是与总是与CSCS段寄存器配合指出下一条要执行指段寄存器配合指出下一条要执行指令的地址,其中存放偏移量部分。实模式使用令的地址,其中存放偏移量部分。实模式使用IPIP,保护模式使用,保护模式使
27、用EIPEIP。现在学习的是第26页,共79页标志寄存器(标志寄存器(FLAGSFLAGS)标标志志寄寄存存器器也也被被称称为为状状态态寄寄存存器器,由由运运算算结结果特征标志和控制标志组成。如果特征标志和控制标志组成。如图图所示。所示。重重点点:各各档档CPUCPU均均有有的的标标志志。即即80868086拥拥有有的的9 9个个标志。标志。现在学习的是第27页,共79页0 01 12 23 34 45 56 67 78 89 91 10 01 11 11 12 21 13 31 14 41 15 51 16 61 17 71 18 81 19 92 20 02 21 1.3 31 1CFPF
28、AFZFSFTFIFDFOFCFPFAFZFSFTFIFDFOFNTCFPFAFZFSFTF FIFDFOFIOPLNTVMRFCFPFAFZFSFTFIFDFOFIOPLNTVMRFACCFPFAFZFSFTFIFDFOFIOPLNTVMRFACVIMVIPIDIOPL8086/808880286386/486DXDX80486SX80586现在学习的是第28页,共79页运算结果特征标志运算结果特征标志 用用 于于 记记 录录 程程 序序 中中 运运 行行 结结 果果 的的 特特 征征。80868086Pentium Pentium 的的标标志志寄寄存存器器均均含含有有CFCF、PFPF、A
29、FAF、ZFZF、SFSF、OFOF这这6 6位标志。位标志。现在学习的是第29页,共79页CFCF:进进位位标标志志,记记录录运运算算结结果果的的最最高高位位向向前前产产生生的的进进位位或或借借位位。可可用用于于检检测测无无符符号号数数运运算算时时是是否否发生溢出。发生溢出。CFCF1 1 有进位或借位有进位或借位 CFCF0 0 无进位或借位无进位或借位现在学习的是第30页,共79页PFPF:奇奇偶偶标标志志,记记录录运运算算结结果果最最低低8 8位位中中含含1 1的的个个数数。可可用用于于检检测测数数据据传传送送过过程程中中是是否否发发生生错错误。误。PFPF1 1 个数为偶数个数为偶数
30、 PFPF0 0 个数为奇数个数为奇数现在学习的是第31页,共79页AFAF:辅辅助助进进位位标标志志,记记录录运运算算结结果果最最低低4 4位位向向前前产产生生的的进进位位或或借借位位。只只有有在在执执行行十十进进制制运运算指令时才关心此位。算指令时才关心此位。AFAF1 1有进位或借位有进位或借位 AFAF0 0无进位或借位无进位或借位现在学习的是第32页,共79页ZFZF:零标志,记录运算结果是否为零标志,记录运算结果是否为0 0。ZFZF1 1 运算结果为零运算结果为零 ZFZF0 0 结果非零结果非零SFSF:符号标志,记录运算结果的符号。符号标志,记录运算结果的符号。SFSF1 1
31、 运算结果为负运算结果为负 SFSF0 0 结果非负结果非负现在学习的是第33页,共79页OFOF:溢出标志,记录运算结果是否超出了溢出标志,记录运算结果是否超出了机器所能表示的范围。可用于检测带符号数运机器所能表示的范围。可用于检测带符号数运算时是否发生溢出。算时是否发生溢出。OFOF1 1 运算结果超出范围运算结果超出范围 OFOF0 0 结果未超出结果未超出现在学习的是第34页,共79页控制标志:控制标志:控控制制标标志志控控制制处处理理器器的的操操作作,要要通通过过专专门门的的指令才能使控制标志发生变化。指令才能使控制标志发生变化。控制标志包括:控制标志包括:IFIF、DFDF、TFT
32、F等等现在学习的是第35页,共79页以下控制标志对以下控制标志对80868086Pentium CPUPentium CPU均有效:均有效:IFIF:中中断断允允许许标标志志。IFIF的的控控制制只只对对外外部部可可屏屏蔽蔽中断请求(中断请求(INTRINTR)起作用。)起作用。IFIF1 1 允许允许CPUCPU响应响应INTRINTRIFIF0 0 禁止响应禁止响应INTRINTR现在学习的是第36页,共79页DFDF:方方向向标标志志。专专服服务务于于字字符符串串操操作作指指令令,指示串操作时操作数地址的增减方向。指示串操作时操作数地址的增减方向。DFDF1 1 串操作时操作数地址为自动
33、减量串操作时操作数地址为自动减量DFDF0 0 串操作时操作数地址为自动串操作时操作数地址为自动增量增量 现在学习的是第37页,共79页TFTF:陷阱标志,用于程序调试。陷阱标志,用于程序调试。TFTF1 CPU1 CPU处于单步方式处于单步方式TFTF0 CPU0 CPU处于连续方式处于连续方式现在学习的是第38页,共79页以下控制标志只对以下控制标志只对8028680286以上以上CPUCPU有效:有效:IOPLIOPL(I/O Privilege LevelI/O Privilege Level):特权标):特权标志,占志,占D D1313和和D D1212两位。当在保护模式工作时,两位
34、。当在保护模式工作时,IOPLIOPL指定要求执行指定要求执行I/OI/O指令的特权级。若当前指令的特权级。若当前任务的特权级比任务的特权级比IOPLIOPL高则执行高则执行I/OI/O指令;否则指令;否则发生一个保护异常,导致执行程序被挂起发生一个保护异常,导致执行程序被挂起 现在学习的是第39页,共79页NTNT:嵌套任务标志。嵌套任务标志。保护模式在执行中断返回指令保护模式在执行中断返回指令IRETIRET时要时要测试测试NTNT值。当值。当NTNT1 1时,表示当前执行的任务时,表示当前执行的任务嵌套于另一任务之中,执行完该任务后要嵌套于另一任务之中,执行完该任务后要返回到另一任务,返
35、回到另一任务,IRETIRET指令的执行是通过任指令的执行是通过任务切换实现的。当务切换实现的。当NTNT0 0时,用堆栈中保存的时,用堆栈中保存的值恢复值恢复FLAGSFLAGS、CST CST 及及IPIP寄存器的内容,以寄存器的内容,以执行常规的执行常规的IRETIRET中断返回操作。中断返回操作。现在学习的是第40页,共79页以下控制标志只对以下控制标志只对8038680386以上以上CPUCPU有效:有效:RFRF:重重启启动动标标志志。该该标标志志控控制制是是否否接接受受调调试故障。试故障。RFRF0 0时接受,时接受,RFRF1 1时忽略。时忽略。现在学习的是第41页,共79页V
36、MVM:虚拟方式标志。虚拟方式标志。当当CPUCPU处于保护模式时,若处于保护模式时,若VMVM1 1则切换则切换到虚拟模式,以允许执行多个到虚拟模式,以允许执行多个DOSDOS程序;否程序;否则则CPUCPU工作在一般的保护模式。工作在一般的保护模式。现在学习的是第42页,共79页以下控制标志只对以下控制标志只对8048680486SXCPUSXCPU有效:有效:ACAC:地址对齐检查标志。地址对齐检查标志。若若ACAC1 1时进行地址对齐检查,当出现地址时进行地址对齐检查,当出现地址不对齐时会引起地址对齐异常,只有在特权级不对齐时会引起地址对齐异常,只有在特权级3 3运行的应用程序才检查引
37、起地址对齐故障。运行的应用程序才检查引起地址对齐故障。若若ACAC0 0时不进行地址对齐检查。只有时不进行地址对齐检查。只有8048680486SXSX微微处理器使用该位,主要用来同它配套的协处理处理器使用该位,主要用来同它配套的协处理器器8048780487SXSX同步工作。所谓地址不对齐是指以同步工作。所谓地址不对齐是指以下情形:一个字从奇地址开始,或一个双字不下情形:一个字从奇地址开始,或一个双字不是从是从4 4的倍数的地址开始。的倍数的地址开始。现在学习的是第43页,共79页以下控制标志只对以下控制标志只对PentiumPentium以上以上CPUCPU有效:有效:IDID:标识标志。
38、若标识标志。若IDID1 1,则表示,则表示PentiumPentium支持支持CPUIDCPUID指令,指令,CPUIDCPUID指令给系统提供指令给系统提供PentiumPentium微处理器有关版本号及制造商等信息。微处理器有关版本号及制造商等信息。现在学习的是第44页,共79页VIPVIP:虚虚拟拟中中断断挂挂起起标标志志。与与VIFVIF配配合合,用用于于多任务环境给操作系统提供虚拟中断挂起信息。多任务环境给操作系统提供虚拟中断挂起信息。VIFVIF:虚拟中断标志,是虚拟方式下中断标志虚拟中断标志,是虚拟方式下中断标志位的映像。位的映像。现在学习的是第45页,共79页2.3 2.3
39、存储器存储器基本概念基本概念 1 1、二二进进制制位位:存存储储信信息息的的基基本本单单位位,可可用用小写字母小写字母b b表示。表示。2 2、字字节节:存存取取信信息息的的基基本本单单位位,可可用用大大写写字字母母B B表表示示。一一个个字字节节由由八八位位二二进进制制数数组组成成,占占用用一一 个个 存存 储储 单单 元元。其其 位位 编编 号号 自自 左左 至至 右右 为为b b7 7b b6 6b b5 5b b4 4b b3 3b b2 2b b1 1b b0 0。现在学习的是第46页,共79页3 3、字字:一一个个字字1616位位,占占用用两两个个存存储储单单元元。其位编号为其位编
40、号为b b1515b b0 0。4 4、双双字字:一一个个双双字字3232位位,占占用用四四个个存存储储单单元。其位编号为元。其位编号为b b3131b b0 0。5 5、四四字字:一一个个四四字字6464位位,占占用用八八个个存存储储单元。其位编号为单元。其位编号为b b6363b b0 0。现在学习的是第47页,共79页逆序存放逆序存放照照IntelIntel公司的习惯,对于字、双字、四字数公司的习惯,对于字、双字、四字数据类型,其低地址中存放低位字节数据,高地址据类型,其低地址中存放低位字节数据,高地址中存放高位字节数据,这就是有些资料中称为中存放高位字节数据,这就是有些资料中称为“逆序
41、存放逆序存放”的含义。的含义。现在学习的是第48页,共79页存储器分段管理存储器分段管理 IBM IBM PCPC机机的的存存储储器器采采用用分分段段管管理理的的方方法法。存存储储器器采采用用分分段段管管理理后后,一一个个内内存存单单元元地地址址要要用用段段基基地地址址和和偏偏移移量量两两个个逻逻辑辑地地址址来来描描述述,表表示示为为段段基基址址:偏偏移移量量,其其段段基基址址和和偏偏移移量量的的限限定定、物物理理地地址的形成视址的形成视CPUCPU工作模式决定。工作模式决定。现在学习的是第49页,共79页80868086和和80888088微处理器只能工作在实模式,微处理器只能工作在实模式,
42、8028680286以上的微处理器既可以工作在实模式也可以上的微处理器既可以工作在实模式也可以工作在保护模式。无论是哪一种微处理器,以工作在保护模式。无论是哪一种微处理器,每次机器冷启动或复位都隐含地以实模式开始每次机器冷启动或复位都隐含地以实模式开始工作。在实模式下微处理器只可以寻址最低的工作。在实模式下微处理器只可以寻址最低的1 1M M字节。字节。现在学习的是第50页,共79页对对段段基基址址的的限限定定:只只要要工工作作在在实实模模式式,段段基基址址必必须须定定位位在在地地址址为为1616的的整整数数倍倍上上,这这种种段段起起始始边边界界通通常常称称做做节节或或小小段段。段段基基址址有
43、有了了这这样样的的规规定定,1 1M M字字节节空空间间的的2020位位地地址址的的低低4 4位位可可以以不不表示出,而高表示出,而高1616位就可以完全放入段寄存器了。位就可以完全放入段寄存器了。对对段段长长的的限限定定:在在实实模模式式下下段段长长不不能能超超过过6464K K。现在学习的是第51页,共79页存存储储器器采采用用分分段段管管理理后后,其其物物理理地地址址的的计计算算方法为:方法为:1010HH段基址偏移量段基址偏移量 (其中(其中H H表示是十六进制数)表示是十六进制数)简便的计算方法:因为段基址和偏移量一般简便的计算方法:因为段基址和偏移量一般用十六进制数表示,物理地址简
44、便的计算方法用十六进制数表示,物理地址简便的计算方法是在段基址的最低位补以是在段基址的最低位补以0 0H H,再加上偏移量。,再加上偏移量。现在学习的是第52页,共79页例例某某内内存存单单元元的的地地址址用用十十六六进进制制数数表表示示为为1234:56781234:5678,则则其其物物理理地地址址为为1234012340H H5678H5678H179B8H179B8H。如图如图2-52-5所示。所示。现在学习的是第53页,共79页存储器存储器1234012340H H179179B8HB8H1234:56781234:567856785678H H段段n n1234012340(16(
45、16(16(16HHHH段基址段基址段基址段基址)56785678(偏移量偏移量偏移量偏移量)179179B8B8(物理地址物理地址物理地址物理地址)图图图图2-42-4物理地址的形成物理地址的形成物理地址的形成物理地址的形成现在学习的是第54页,共79页2.4 2.4 PCPC机操作系统的发展机操作系统的发展MS-DOSMS-DOS MS-DOSMS-DOS使用字符界面,用户必须通过输入使用字符界面,用户必须通过输入命令来执行各个程序,不易使用。它又是一个命令来执行各个程序,不易使用。它又是一个单任务的操作系统,同一时刻只能运行一项任单任务的操作系统,同一时刻只能运行一项任务。务。MS-DO
46、SMS-DOS运行在实模式下,只能寻址运行在实模式下,只能寻址640640KBKB内存,内存,要访问其他的内存只能依靠要访问其他的内存只能依靠XMSXMS、EMSEMS、DPMIDPMI(DOS DOS Protected Mode InterfaceProtected Mode Interface)等接口。)等接口。MS-DOSMS-DOS使使用用FAT 12/FAT 16FAT 12/FAT 16文件系统。文件系统。现在学习的是第55页,共79页桌面桌面WindowsWindows系统系统 在在Windows Windows 95/9895/98中中,如如果果某某一一个个程程序序运运行行出
47、出错错,则则整整个个系系统统不不能能继继续续运运行行。这这个个缺缺点点在在Windows Windows NTNT和和Windows Windows XPXP系系统统中中得得到到解解决决,这这是是因因为为新新的的系系统统将将各各个个进进程程的的空空间间完完全全隔隔离离,如如果一个进程出错,其他进程不受影响。果一个进程出错,其他进程不受影响。Windows 95/98Windows 95/98使用使用FAT 16/FAT 32FAT 16/FAT 32文件系统。文件系统。现在学习的是第56页,共79页Windows NTWindows NT系列系列 Linux Linux LinuxLinux是
48、一个类是一个类UNIXUNIX的系统,它支持多用户环的系统,它支持多用户环境、多进程、多境、多进程、多CPUCPU、网络、虚拟内存管理、多、网络、虚拟内存管理、多种文件系统等。种文件系统等。现在学习的是第57页,共79页2.5 2.5 DOSDOS内存布局内存布局 0 0 640 640KBKB (1 (1MBMB)1024 1024KBKB IBM-PCIBM-PCIBM-PCIBM-PC机存储器映像机存储器映像机存储器映像机存储器映像现在学习的是第58页,共79页程序暂驻区(程序暂驻区(TPATPA):):长度为长度为640640KBKB,其中驻留操作系统的核心部分、,其中驻留操作系统的核
49、心部分、其他控制计算机的程序、当前激活或非激活的应其他控制计算机的程序、当前激活或非激活的应用程序等。应用程序在执行时就存放在程序暂驻用程序等。应用程序在执行时就存放在程序暂驻区。区。现在学习的是第59页,共79页系统内存区:系统内存区:长度为长度为384384KBKB,主要包括,主要包括BIOS ROMBIOS ROM、显示、显示RAMRAM、硬盘控制器、硬盘控制器ROMROM等。对于系统内存区的其余空间,等。对于系统内存区的其余空间,8038680386以上机器可以利用以上机器可以利用CPUCPU的换页功能,把的换页功能,把1 1M M以以上的内存映射到这块区域,使上的内存映射到这块区域,
50、使DOSDOS也可以使用这也可以使用这块空间。块空间。现在学习的是第60页,共79页扩展存储区(扩展存储区(XMSXMS):):286286以以上上的的计计算算机机可可以以包包含含扩扩展展存存储储区区,使使存存储储容容量量远远远远大大于于1 1M M,只只有有在在保保护护模模式式下下才才可可以以访访问问扩扩展展存存储储区区。它它要要靠靠其其他他的的内内存存管管理理程程序序管管理理,目目前前使使用用最最多多的的扩扩展展内内存存管管理理程程序序是是HIMEM.SYSHIMEM.SYS。该该程程序序应应该该通通过过CONFIG.SYSCONFIG.SYS中中的的DEVICEDEVICE命命令令说说明