计算机软件课次精选文档.ppt

上传人:石*** 文档编号:52091651 上传时间:2022-10-21 格式:PPT 页数:48 大小:2.24MB
返回 下载 相关 举报
计算机软件课次精选文档.ppt_第1页
第1页 / 共48页
计算机软件课次精选文档.ppt_第2页
第2页 / 共48页
点击查看更多>>
资源描述

《计算机软件课次精选文档.ppt》由会员分享,可在线阅读,更多相关《计算机软件课次精选文档.ppt(48页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、计算机软件课次本讲稿第一页,共四十八页图3.10数据在存储器中的存放本讲稿第二页,共四十八页若存放的是字型数据(16位二进制数),则将字的低位字节存放在低地址单元,高位字节存放在高地址单元。如从地址0011FH开始的两个连续单元中存放一个字型数据,则该数据为DF46H,记为:(0011FH)=DF46H。若存放的是双字型数据(32位二进制数,这种数一般作为地址指针,其低位字是被寻址地址的偏移量,高位字是被寻址地址所在段的段地址),这种类型的数据要占用连续的4个存储单元,同样,低字节存放在低地址单元,高字节存放在高地址单元。如从地址E800AH开始的连续4个存储单元中存放了一个双字型数据,则该数

2、据为66A65E65H,记为:(E800AH)=66A65E65H。本讲稿第三页,共四十八页 2存储器的段结构存储器的段结构8086/8088CPU中有关可用来存放地址的寄存器如IP、SP等都是16位的,故只能直接寻址64KB。为了对1M个存储单元进行管理,8086/80888086/8088采用了段结构的存储器管理方法采用了段结构的存储器管理方法采用了段结构的存储器管理方法采用了段结构的存储器管理方法。8086/8088将整个存储器分为许多逻辑段,每个逻辑段的容量小于或等于64KB,允许它们在整个存储空间中浮动,各个逻辑段之间可以紧密相连,也可以互相重叠。用户编写的程序(包括指令代码和数据)

3、被分别存储在代码段、数据段、堆栈段和附加数据段中,这些段的段地址分别存储在段寄存器CS、DS、SS和ES中,而指令或数据在段内偏移地址可由对应的地址寄存器或立即数给出,如表3.8所示。本讲稿第四页,共四十八页表表3.8存储器操作时段地址和段内偏移地址的来源存储器操作时段地址和段内偏移地址的来源存储器操作类型存储器操作类型段段地地址址偏移地址偏移地址正常来源正常来源其他来源其他来源取指令取指令CS无无IP存取操作数存取操作数DSCS、ES、SS有效地址有效地址EA通过通过BP寻址存取操寻址存取操作数作数SSCS、ES、SS有效地址有效地址EA堆栈操作堆栈操作SS无无BP、SP源字符串源字符串DS

4、CS、ES、SSSI目的字符串目的字符串ES无无DI本讲稿第五页,共四十八页如果从存储器中读取指令,则段地址来源于代码段寄存器CS,偏移地址来源于指令指针寄存器IP。如果从存储器读/写操作数,则段地址通常由数据段寄存器DS提供(必要时可通过指令前缀实现段超越,将段地址指定为由CS、ES或SS提供),偏移地址则要根据指令中所给出的寻址方式确定,这时,偏移地址通常由寄存器BX、SI、DI以及立即数等提供,这类偏移地址也被称为“有效地址”(EA)。如果操作数是通过基址寄存器BP寻址的,则此时操作数所在段的段地址由堆栈段段寄存器SS提供(必要时也可指定为CS、SS或ES)(详见第4章“寻址方式”一节)

5、。本讲稿第六页,共四十八页如果使用堆栈操作指令(PUSH或POP)进行进栈或出栈操作,以保护断点或现场,则段地址来源于堆栈段寄存器SS,偏移地址来源于堆栈指针寄存器SP(详见本节“4.堆栈操作”)。如果执行的是字符串操作指令,则源字符串所在段的段地址由数据段寄存器DS提供(必要时可指定为CS、ES或SS),偏移地址由源变址寄存器SI提供;目的字符串所在段的段地址由附加数据段寄存器ES提供,偏移地址由目的变址寄存器DI提供。以上这些存储器操作时段地址和偏移地址的约定是由系统设计时事先已规定好的,编写程序时必须遵守这些约定。本讲稿第七页,共四十八页 3逻辑地址与物理地址由于采用了存储器分段管理方式

6、,8080/8088CPU在对存储器进行访问时,根据当前的操作类型(取指令或存取操作数)以及读取操作数时指令所给出的寻址方式,CPU就可确定要访问的存储单元所在段的段地址以及该单元在本段内的偏移地址(如表3.8所示)。我我我我们们们们把把把把通通通通过过过过段段段段地地地地址址址址和和和和偏偏偏偏移移移移地地地地址址址址来来来来表表表表示示示示的的的的存存存存储储储储单单单单元元元元的的的的地地地地址址址址称称称称为为为为逻逻逻逻辑辑辑辑地地地地址址址址,记记记记为为为为:段地址:偏移地址段地址:偏移地址段地址:偏移地址段地址:偏移地址。CPU在对存储单元进行访问时,必须在20位的地址总线上提

7、供一个20位的地址信息,以便选中所要访问的存储单元。我们把CPU对存储器进行访问时实际寻址所使用的20位地址称为物理地址。位地址称为物理地址。位地址称为物理地址。位地址称为物理地址。本讲稿第八页,共四十八页物理地址是由CPU内部总线接口单元BIU中的地址加法器根据逻辑地址产生的。由逻辑地址形成20位物理地址的方法为:段段段段地地地地址址址址 10H+10H+偏移地址。偏移地址。偏移地址。偏移地址。其形成过程如图3.3所示。图3.11给出了存储器分段示意。如果当前的(IP)=1000H,那么,下一条要读取的指令所在存储单元的物理地址为:(CS)10H+(IP)=1000H10H+1000H=11

8、000H如果某操作数在数据段内的偏移地址为8000H,则该操作数所在存储单元的物理地址为(DS)10H+8000H=2A0FH10H+8000H=320F0H本讲稿第九页,共四十八页存储器分段示意图本讲稿第十页,共四十八页 4 4堆栈操作堆栈操作堆栈操作堆栈操作堆栈是在存储器中开辟的一个特定区域。开辟堆栈的目的主要有以下两点:(1)存放指令操作数(变量)。此时,对操作数进行访问时,段地址由堆栈段寄存器SS来提供,操作数在该段内的偏移地址由基址寄存器BP来提供。(2)保护断点和现场。此为堆栈的主要功能。本讲稿第十一页,共四十八页进栈和出栈操作过程进栈和出栈操作过程进栈和出栈操作过程进栈和出栈操作

9、过程在执行进栈和出栈操作时,段地址由堆栈段寄存器SS提供,段内偏移地址由堆栈指针寄存器SP提供,SP始终指向栈顶,当堆栈空时,SP指向栈底。如图3.12所示,设在存储器中开辟了100H个存储单元的堆栈段,当前(SS)=2000H,堆栈空时(SP)=0100H,即此时SP指向栈底(如图3.12(a)所示)。由于PUSH和POP指令要求操作数为字型数据,因此,每进行一次进栈操作,SP值减2(如图3.12(b)所示),每进行一次出栈操作,SP值加2(如图3.12(c)所示)。在进栈和出栈操作过程中,SP始终指向栈顶。本讲稿第十二页,共四十八页图图3.12进栈与出栈操作示意图进栈与出栈操作示意图本讲稿

10、第十三页,共四十八页 58086/8088存储器结构存储器结构8086的1MB存储空间实际上分为两个512KB的存储体,又称存储库,分别叫高位库和低位库,如图3.13所示。低位库与数据总线D7D0相连,该库中每个存储单元的地址为偶数地址;高位库与数据总线D15D8相连,该库中每个存储单元的地址为奇数地址。地址总线A19A1可同时对高、低位库的存储单元寻址,A0和BHE用于对库的选择,分别连接到库选择端SEL上。当A0=0时,选择偶数地址的低位库;当BHE=0时,选择奇数地址的高位库;当两者均为0时,则同时选中高低位库。利用A0和BHE这两个控制信号,既可实现对两个库进行读/写(即16位数据),

11、也可单独对其中一个库进行读/写(8位数据),如表3.9所示。本讲稿第十四页,共四十八页图3.13 8086存储器高低位库的连接本讲稿第十五页,共四十八页表表3.98086存储器高低位库选择存储器高低位库选择A0对应操作00同时访问两个存储体,读/写一个字的信息01只访问奇地址存储体,读/写高字节的信息10只访问偶地址存储体,读/写低字节的信息11无操作本讲稿第十六页,共四十八页在8086系统中,存储器这种分体结构对用户来说是透明的。当用户需要访问存储器中某个存储单元,以便进行字节型数据的读/写操作时,指令中的地址码经变换后得到20位的物理地址,该地址可能是偶地址,也可能是奇地址。如果是偶地址(

12、A0=0),BHE=1,这时由A0选定偶地址存储体,通过A19A1从偶地址存储体中选中某个单元,并启动该存储体,读/写该存储单元中一个字节信息,通过数据总线的低8位传送数据,如图3.14(a)所示;如果是奇地址(A0)=1,则偶地址存储体不会被选中,也就不会启动它。为了启动奇地址存储体,系统将自动产生BHE=0,作为奇地址存储体的选体信号,与A19A1一起选定奇地址存储体中的某个存储单元,并读/写该单元中的一个字节信息,通过数据总线的高8位传送数据,如图3.14(b)所示。可以看出,对于字节型数据,不论它存放在偶地址的低位库,还是奇地址的高位库,都可通过一个总线周期完成数据的读/写操作。本讲稿

13、第十七页,共四十八页如果用户需要访问存储器中某两个存储单元,以便进行字型数据的读/写时,可分两种情况来讨论。一种情况是用户要访问的是从偶地址开始的两个连续存储单元(即字的低字节在偶地址单元,高字节在奇地址单元),这种存放称为规则存放,这样存放的字称为规则字。对于规则存放的字可通过一个总线周期完成读/写操作,这时A0=0,BHE=0,如图3.14(c)所示;另一种情况是用户要访问的是从奇地址开始的两个存储单元(即字的低字节在奇地址单元,高字节在偶地址单元),这种存放称为非规则存放,这样存放的字称为非规则字,对于非规则存放的字需要通过两个总线周期才能完成读/写操作,即第一次访问存储器时读/写奇地址

14、单元中的字节,第二次访问存储器时读/写偶地址单元中的字节,如图3.14(d)所示。显然,为了加快程序的运行速度,希望字型数据在存储器中规则存放。本讲稿第十八页,共四十八页图3.14从8086存储器的偶数和奇数地址读字节和字(a)读偶地址单元中的字节;(b)读奇地址单元中的字节;(b)(c)读偶地址单元中的字;(d)读奇地址单元中的字本讲稿第十九页,共四十八页在8088系统中,可直接寻址的存储空间同样也是1MB,但其存储器的结构与8086有所不同,它的1MB存储空间同属于一个单一的存储体,即存储体为1M8位。它与总线之间的连接方式很简单,其20根地址线A19A0与8根数据线分别与8088CPU对

15、应的地址线和数据线相连。8088CPU每访问一次存储器只能读/写一个字节信息,因此在8088系统的存储器中,字型数据需要两次访问存储器才能完成读/写操作。本讲稿第二十页,共四十八页3.3.2 8086/8088的的I/O组织组织8086/8088系统和外部设备之间是通过I/O接口电路来联系的。每个I/O接口都有一个或几个端口。在微机系统中每个端口分配一个地址号,称为端口地址。一个端口通常为I/O接口电路内部的一个寄存器或一组寄存器。本讲稿第二十一页,共四十八页8086/8088CPU用地址总线的低16位作为对8位I/O端口的寻址线,所以8086/8088系统可访问的8位I/O端口有65536(

16、64K)个。两个编号相邻的8位端口可以组成一个16位的端口。一个8位的I/O设备既可以连接在数据总线的高8位上,也可以连接到数据总线的低8位上。一般为了使数据/地址总线的负载平衡,希望接在数据/地址总线高8位和低8位的设备数目最好相等。当一个I/O设备接在数据总线的低8位(AD7AD0)上时,这个I/O设备所包括的所有端口地址都将是偶数地址(A0=0);若一个I/O设备接在数据总线的高8位(AD15AD8)上时,那么该设备包含的所有端口地址都是奇数地址(A0=1)。如果某种特殊I/O设备既可使用偶地址又可使用奇地址时,此时必须将A0和BHE两个信号结合起来作为I/O设备的选择线。本讲稿第二十二

17、页,共四十八页8086CPU对I/O设备的读/写操作与对存储器的读/写操作类似。当CPU与偶地址的I/O设备实现16位数据的存取操作时,可在一个总线周期内完成;当CPU与奇地址的I/O设备实现16位数据的存取操作时,要占用两个总线周期才能完成。需要说明的是,8086/8088CPU的I/O指令可以用16位的有效地址A15A0来寻址0000FFFFH共64K个端口,但IBMPC系统中只使用了A9A010位地址来作为I/O端口的寻址信号,因此,其I/O端口的地址仅为0003FFH共1K个。本讲稿第二十三页,共四十八页3.4从从80286到到Pentium系列的技术发展系列的技术发展3.4.1 80

18、 x86寄存器组寄存器组寄存器在计算机中起着非常重要的作用,每个寄存器相当于运算器中的一个存储单元,但由于寄存器位于CPU内部,对它们进行访问时不需要启动一个总线周期,因此其存取速度要比存储器快得多。寄存器用来存放计算过程中所需要的或所得到的各种信息,包括操作数地址、操作数以及运算的中间结果等。本讲稿第二十四页,共四十八页对程序设计人员来讲,了解CPU内部寄存器结构并掌握其使用方法是进行汇编语言程序设计的关键和基础。寄存器可分为程序可见寄存器和程序不可见寄存器两大类。所谓程序可见寄存器,是指在汇编语言程序设计中可以通过指令来访问的寄存器。程序不可见寄存器是指一般用户程序中不能访问而由系统所使用

19、的寄存器。本节将从程序设计角度介绍80 x86CPU内部程序可见寄存器的结构和使用方法,而对于那些程序不可见寄存器将在随后介绍CPU结构时对其做必要说明。本讲稿第二十五页,共四十八页从本章3.2.2节“8086/8088寄存器结构”中可以看出,8086/8088CPU中程序可见寄存器可分为三类:通用寄存器、段寄存器和控制寄存器。80286之后的CPU中寄存器同样也分为上述三类,只不过有关寄存器的功能和位数有所扩充而已。图3.15给出了80 x86的程序可见寄存器组,下面分别加以说明。本讲稿第二十六页,共四十八页1通用寄存器通用寄存器对于80386及其后续机型则是图3.15中所示的完整的寄存器,

20、它们是32位的通用寄存器,包括EAX、EBX、ECX、EDX、ESP、EBP、ESI和EDI。这些寄存器可以用来存放不同宽度的数据。其中,EAX、EBX、ECX和EDX可作为32位寄存器来用,其低16位既可作为一个16位寄存器来用(分别记为AX、BX、CX和DX),也可作为两个8位寄存器来用(分别记为AH/AL、BH/BL、CH/CL和DH/DL);ESP、EBP、ESI和EDI可作为32位寄存器来用,其低16位也可用做一个16位寄存器(分别记为SP、BP、SI和DI)。需要注意的是,这些寄存器以字节或字的形式被访问时,不被访问的其他部分不受影响。如访问AH时,EAX的高16位和低8位不受影响

21、。本讲稿第二十七页,共四十八页图图3.1580 x86CPU内部程序可见寄存器组内部程序可见寄存器组本讲稿第二十八页,共四十八页此外,在8086/8088以及80286进行存储器寻址时,8个通用寄存器中只有地址指针寄存器(SP和BP)、变址寄存器(SI和DI)以及基址寄存器BX这5个寄存器可以用来存放操作数在存储器段内的偏移地址。在80386及其后续机型中,所有这8个32位通用寄存器既可以存放数据,也可以存放地址,也就是说,这些寄存器都可以用来提供操作数在段内的偏移地址。对于这8个通用寄存器的专用特性,80386及其后续机型的32位通用寄存器的专用特性与8086/8088以及80286的16位

22、通用寄存器的专用特性是相同的,如ECX的计数特性,ESI和EDI分别作为字符串操作指令中源串和目的串的地址寄存器等。本讲稿第二十九页,共四十八页 2控制寄存器8086/8088和80286的控制寄存器包括指令寄存器IP和FLAGS两个16位寄存器。80286中的这两个寄存器与前面介绍的8086/8088中相同,只不过80286中的标志寄存器FLAGS比8086/8088中的FLAGS多定义了两个标志,如图3.16所示。80386及其后续机型也有两个32位专用寄存器EIP和EFLAGS。它们的作用与相应的16位寄存器相同。标志寄存器FLAGS各位的定义如图3.16所示,其中新定义位的作用将在后面

23、涉及时介绍。本讲稿第三十页,共四十八页图3.1680 x86标志寄存器本讲稿第三十一页,共四十八页 3段寄存器与8086/8088CPU相同,80286CPU中也有4个段寄存器CS、DS、SS和ES,它们的功能在本章前面“8086/8088寄存器结构”一节中已做了详细介绍,在此不再赘述。在80386及其以后的80 x86CPU中,除上述4个段寄存器外,又增加了2个段寄存器FS和GS,它们也是附加的数据段寄存器,如图3.15所示。除非专门指定,一般情况下,各段在存储器中的分配是由操作系统负责的。在80 x86中,段寄存器和与其对应存放偏移地址的寄存器之间有一种默认的组合关系,这种默认关系,802

24、86与8086/8088相同(见表3.2),80386及其后续CPU中段寄存器与提供段内偏移地址的寄存器之间的默认组合如表3.10所示。本讲稿第三十二页,共四十八页表3.10 80386及其后续CPU中段寄存器与提供段内偏移地址的寄存器之间的默认组合的寄存器之间的默认组合段寄存器提供段内偏移地址的寄存器CSEIPDSEAX、EBX、ECX、EDX、ESI、EDI或一个8位或32位数SSESP或EBPESEDI(用于字符串操作指令)FS无默认GS无默认本讲稿第三十三页,共四十八页3.4.2 80 x86存储器管理存储器管理存储器管理是由微处理器的存储器管理部件MMU提供的对系统存储器资源进行管理

25、的机制,其目的是方便程序对存储器的应用。本节从应用角度出发,介绍80 x86系列微处理器的存储器管理机制。从8086/8088到Pentium,80 x86系列微处理器的存储器管理机制有了较大变化。8086/8088只有一种存储器管理方式,即实地址方式(简称实方式);80286CPU具有两种工作方式,即实方式和保护虚地址方式(简称保护方式);80386及其以后的CPU有三种工作方式,即实方式、保护方式和虚拟8086方式。本讲稿第三十四页,共四十八页 1实地址方式实地址方式(简称实方式简称实方式)实方式是80 x86系列CPU共有的存储器管理模式,而8086/8088CPU只能工作在此方式下,正

26、如3.3节所介绍的那样,8086/8088CPU通过对存储器分段来实现对1M个存储器单元的直接访问。CPU中BIU单元的地址加法器根据指令中给出的段地址和段内偏移地址,通过将段地址乘以10H(16),即左移4位,再与段内偏移量相加得到一个20位的物理地址,该20位的物理地址加载到20位的地址总线上,即可实现对8086/8088系统1M个存储单元的访问。本讲稿第三十五页,共四十八页80286、80386、80486以及Pentium的地址总线位数分别增加为24、32、32、36(见表3.1),但在实方式下,它们都只能使用低20位地址线,它们所能寻址的存储空间与8086/8088一样,也只有1MB

27、。在实方式下,CPU把从指令中得到的逻辑地址(段地址:段内偏移地址)转换为20位物理地址。不管CPU的实际地址引脚有多少根,在此方式下工作时,只能用其低20根地址线对1M个存储单元进行访问。本讲稿第三十六页,共四十八页 2保护虚拟地址方式(简称保护方式)在实方式下,80286及其后续CPU只相当于一个快速的8086,没有真正发挥这些高性能CPU的作用。而这些CPU的特点是能可靠地支持多用户系统,即使是单用户,也可支持多任务操作,这就要求用新的存储器管理机制保护方式对存储器系统进行管理。1)虚拟存储器的概念虚拟存储器(VirtualMemory)是一种存储器管理技术。它提供比物理存储器大得多的存

28、储空间,使程序设计人员在编写程序时,不用考虑计算机内存的实际容量,就可以编写并运行比实际配置的物理存储器空间大得多的用户程序。本讲稿第三十七页,共四十八页虚拟存储器由存储器管理机制以及一个大容量的快速硬盘存储器(内存)或光盘支持。在程序运行时,只把虚拟地址空间的一小部分映射到主存储器中,其余暂不使用部分则仍存储在硬盘上。当访问主存储器的范围发生变化时,再把虚拟存储器的对应部分从磁盘调入内存,而对主存中目前不再使用的部分,可根据一定的替换策略将其从主存储器送回到硬盘。虚拟存储器地址是一种概念性的逻辑地址。虚拟存储器系统是在存储器体系层次结构(辅存主存高速缓存)的基础上,通过CPU内的存储器管理部

29、件MMU,进行虚拟地址和实地址自动变换而实现的,对每个编程者是透明的,变址空间很大。本讲稿第三十八页,共四十八页2)虚拟存储器的基本结构按照主存(或内存)与外存(辅助存储器)之间信息交换时信息传送单位的不同,虚拟存储器可分为段式虚拟存储器、页式虚拟存储器和段页式虚拟存储器三种。(1)段式虚拟存储器。段是利用程序的模块化性质,按照程序的逻辑结构划分成的多个相对独立的部分。段作为独立的逻辑单位可被其他程序段调用,这样就形成段间连接,产生规模较大的程序,因此,把段作为信息单位在主存与外存之间传送和定位是比较合理的。一般用段表来指明各段在主存中的位置。段表是由操作系统产生并存储在主存中的一个可再定位段

30、。本讲稿第三十九页,共四十八页把主存按段分配的存储器管理方式称为段式管理。段式管理系统的优点是段的分界与程序的自然分界相对应;段的逻辑独立性使它易于编译、管理、修改和保护,也便于多道程序共享;某些类型的段(如堆栈、队列等)具有动态可变长度,允许自由调度以便有效利用主存空间,但是,正因为段的长度各不相同,段的起点和终点不定,给主存空间的分配带来麻烦,而且容易在段间留下许多空余的存储空间不好利用,造成浪费。本讲稿第四十页,共四十八页图3.17给出了段式虚拟存储器地址变换的原理。为了把虚拟地址(段号:段内偏移地址)变换为实存地址,需要一个段表,其格式如图3.17的上半部分所示。装入位为“1”表示该段

31、已调入主存,为“0”则表示该段不在主存中;段的长度可大可小(其长度因程序而异),所以,段表中需要有长度指示。在访问某段时,如果段内偏移地址值超过段的长度,则发生地址越界中断。图3.17下半部分表示了虚拟地址向实存地址的转换过程。本讲稿第四十一页,共四十八页图3.17段式虚拟存储器地址变换本讲稿第四十二页,共四十八页(2)页式虚拟存储器。页式管理系统的基本信息传送单位是定长的页。主存的物理空间被划分为等长的固定区域,称为页面。页面的起点和终点地址是固定的,给页表的建立带来了方便。惟一可能造成浪费的是程序最后一页的零头的页内空间,它比段式管理系统的段外空间浪费要小得多。页式管理的缺点正好和段式管理

32、系统相反,由于页不是逻辑上独立的实体,因而处理、保护和共享都不如段式方便。本讲稿第四十三页,共四十八页在页式虚拟存储系统中,把虚拟空间分成页,称为逻辑页;主存空间也分成同样大小的页,称为物理页。虚拟地址由逻辑页号和页内行地址组成;实存地址由物理页号和页内行地址组成。由于两者的页面大小是相同的,因而页内行地址是相等的。虚拟地址到实存地址的转换是通过由操作系统建立并存储在主存中的页表实现的,如图3.18所示。在页表中,对应每一个虚存逻辑页号有一个表目,表目内容包括该逻辑页所在的主存页面地址(物理页号),用它作为实存地址的高字段,与虚存地址的页内行地址相拼接就形成了实存地址。本讲稿第四十四页,共四十

33、八页图3.18页式虚拟存储器地址变换本讲稿第四十五页,共四十八页(3)段页式虚拟存储器。为了克服段式和页式存储器管理系统各自的缺点,可以采用分段和分页相结合的段页式管理系统。程序按模块分段,段内再分页,交换信息时以页为单位进行信息传送,用段表和页表(程序的每个段都要有一个页表)进行两级存储器定位管理。如图3.19所示,目前微型计算机中广泛使用的是分段和分页的存储器管理机制。它们都使用了由操作系统产生并驻留于内存中的各种表格,这些表格规定了各自的转换函数,从而实现从虚拟地址到实存地址之间的转换。这些表格只允许操作系统进行访问,应用程序不能对其进行修改。这样,操作系统为每一个任务维护一套各自不同的转换表格,其结果使每一任务有不同的虚拟地址空间,并使各任务彼此隔离开来,以便完成多任务分时操作。本讲稿第四十六页,共四十八页图3.19虚拟地址物理地址转换本讲稿第四十七页,共四十八页对于80286而言,只有段式存储器管理方式,而80386及其后续机型采用段式和页式存储器管理方式,即首先使用段机制,把虚拟地址转换为一个中间地址空间的地址,这个中间地址空间称为线性地址空间,其地址称为线性地址。然后再用分页机制把线性地址转换为物理地址。下面就简要介绍80 x86的段式和页式存储器管理机制。本讲稿第四十八页,共四十八页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁