您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > Intel微机原理第2章(微处理器及其结构)-1
苏州大学计算机科学与技术学院第1页微型计算机技术课程讲义第二章微处理器及其结构2-1编程结构2-2实模式存储器寻址2-3保护模式存储器寻址2-4存储器分页机制苏州大学计算机科学与技术学院第2页微型计算机技术课程讲义2-1编程结构(8086)总线接口部件BIU(BusInterfaceUnit)执行部件EU(ExecutionUnit)总线接口部件BIU(BusInterfaceUnit)执行部件EU(ExecutionUnit)AHALBHBLCHCLDHCLSPBPDISI运算寄存器ALU标志寄存器控制电路执行部件(EU)总线接口部件(BIU)外部总线输入/输出控制电路CSDSSSESIP内部寄存器∑指令队列寄存器(6)16位20位16位8位苏州大学计算机科学与技术学院第3页微型计算机技术课程讲义程序员可见寄存器visibleregisters苏州大学计算机科学与技术学院第4页微型计算机技术课程讲义通用寄存器苏州大学计算机科学与技术学院第5页微型计算机技术课程讲义专用寄存器苏州大学计算机科学与技术学院第6页微型计算机技术课程讲义扩展标志寄存器EFLAGS苏州大学计算机科学与技术学院第7页微型计算机技术课程讲义苏州大学计算机科学与技术学院第8页微型计算机技术课程讲义286和386以上标志位苏州大学计算机科学与技术学院第9页微型计算机技术课程讲义486和Pentium以上标志位苏州大学计算机科学与技术学院第10页微型计算机技术课程讲义2-2实模式存储器寻址苏州大学计算机科学与技术学院第11页微型计算机技术课程讲义段寄存器苏州大学计算机科学与技术学院第12页微型计算机技术课程讲义存储器地址的分段苏州大学计算机科学与技术学院第13页微型计算机技术课程讲义8086以上16位段寄存器和偏移寄存器CS:IPSS:SP,SS:BPDS:BX,DS:EDI,DS:ESI,DS:8-bitor16-bit_literal,ES:DI苏州大学计算机科学与技术学院第14页微型计算机技术课程讲义8086系统的堆栈堆栈是存储器中的特殊区域在堆栈段内,“FIFO”SP始终指向栈顶,总是字操作栈底设在高地址区、堆栈地址由高向低增长(象一个有底的桶)存放断点或暂存数据苏州大学计算机科学与技术学院第15页微型计算机技术课程讲义80386以上32位段寄存器和偏移寄存器CS:EIPSS:ESP,SS:EBPDS:EAX,DS:EBX,DS:ECX,DS:EDX,DS:EDI,DS:ESI,DS:8-bit_literal,DS:32-bit_literalES:EDIFSandGShavenodefault.苏州大学计算机科学与技术学院第16页微型计算机技术课程讲义2-3保护模式存储器寻址苏州大学计算机科学与技术学院第17页微型计算机技术课程讲义Segmentregistercontainsaselectorthatselectsadescriptorfromthedescriptortable.Thedescriptorcontainsinformationaboutthesegment,e.g.,it’sbaseaddress,lengthandaccessrights.Theoffsetcanbe32-bits.苏州大学计算机科学与技术学院第18页微型计算机技术课程讲义选择符(Selector)苏州大学计算机科学与技术学院第19页微型计算机技术课程讲义全局描述符表、局部描述符表、中断描述符表苏州大学计算机科学与技术学院第20页微型计算机技术课程讲义Explanation#GDTR(GlobalDescriptorTableRegister--全局描述符表寄存器)包含描述符表基地址和界限(最大64KB,16位)。一旦进入保护工作模式时,应装入GDTR(指令LGDTQWORDPTRSRC---48位,高双字为段基地址,低字为段界限)#IDTR(InterruptDescriptorTableRegister--中断描述符表寄存器),在使用保护工作模式时,应初始化。由此指向中断描述符表,与GDTR类似。Program–IvisibleRegisters苏州大学计算机科学与技术学院第21页微型计算机技术课程讲义基地址界限访问权限TRLDTR基地址界限描述符表地址GDTRIDTR150310310110310150Program–IvisibleRegisters苏州大学计算机科学与技术学院第22页微型计算机技术课程讲义#LDTR(LocalDescriptorTableRegister--局部描述符表寄存器),局部描述符表的位置从全局描述符表中得到(由GDTR描述),对于具体的位置,将选择子装入LDTR(LLDTWORDPTRSRC,如同段寄存器),从而将基地址等装入对应的高速缓存。#GDTR利用结构类型定义伪描述符:PDESCSTRUCLIMITDW0BASEDD0PDESCENDSProgram–IvisibleRegisters苏州大学计算机科学与技术学院第23页微型计算机技术课程讲义段描述符(SegmentDescriptor)苏州大学计算机科学与技术学院第24页微型计算机技术课程讲义Baseaddress:(基地址)Startinglocationofthememorysegment.Limit:(段长)containthelastoffsetaddressofaseg_ment,i.e.lengthofthesegmentminus1.20-bitsallowssegmentsupto1MB.Thisvalueisshiftedby12bitstotheleftwhentheG(Granularitybit)issetto1.80286段描述符高16位为全0.苏州大学计算机科学与技术学院第25页微型计算机技术课程讲义Gbit(Granularitybit粒度):WhenG=0,segmentscanbe1byteto1MBinlength.WhenG=1,segmentscanbe4KBto4GBinlength.Ubit:User(OS)definedbittoindicatethesegmentisavailable(U=0)ornotavailable(U=1)Dbit:Indicateshowtheinstructions(80386andup)accessregisterandmemorydatainprotectedorrealmode.WhenD=0,instructionsare16-bitinstructions,with16-bitoffsetsand16-bitregisters.Stacksareassumed16-bitwideandSPisused.WhenD=1,32-bitsareassumed.Allows8086-80286programstorun.Xbit:ReservedbyIntel.苏州大学计算机科学与技术学院第26页微型计算机技术课程讲义SegmentDescriptors:AccessRights(Byte5):苏州大学计算机科学与技术学院第27页微型计算机技术课程讲义例2-2,2-3例2-2如Base=Start=10000000H,Limit=001FFHG=0则End=Base+Limit=10000000H+001FFH=100001FFH例2-3上例中,如G=1(Limit=Limit4K)则End=Base+Limit=10000000H+001FFXXXH=100001FFFFFH若Base=10000001H,则XXX=000H000H--FFFH苏州大学计算机科学与技术学院第28页微型计算机技术课程讲义描述符的结构类型表述DESCRIPTORSTRUCLIMITLDW0BASELDW0BASEMDB0ATTRIBUTESDW0BASEHDB0DESCRIPTORENDS苏州大学计算机科学与技术学院第29页微型计算机技术课程讲义描述符的结构类型表述例DATASDESCRIPTOR〈0FFFFH,0,10H,0F2H,0〉得LIMITL=FFFFH,BASEL=0000H,BASEM=10HATTRIBUTES=00F2H,即(G=0,LIMIT(19~16)=0H)BASEH=00H所以,段首地址为00100000H,段界限为FFFFH,即段最后地址=段首地址+段界限=10FFFFH(段为64KB)苏州大学计算机科学与技术学院第30页微型计算机技术课程讲义利用段选择子确定段基地址和段界限假设有GDT为:DUMMYDESRIPTOR〈〉DESC1DESCRIPTOR1234H,5678H,34H,92H,0DESC2DESCRIPTOR1234H,5678H,34H,93H,0DESC3DESCRIPTOR5678H,1234H,56H,98H,0DESC4DESCRIPTOR5678H,1234H,56H,99H,0DESC5DESCRIPTOR0FFFFH,0,10H,16H,0DESC6DESCRIPTOR0FFFFH,0,10H,90H,0苏州大学计算机科学与技术学院第31页微型计算机技术课程讲义利用段选择子确定段基地址和段界限•DS=0020H=0000000000100000B,则INDEX=4,TI=0表示选择第4个描述符(INDEX=0,TI=0时,有特殊用途,全局描述符从1开始,必须有DUMMYDESRIPTOR〈〉)段起始地址为561234H,段界限为5678H苏州大学计算机科学与技术学院第32页微型计算机技术课程讲义保护工作方式下的地址形成机制选择子偏移量:段机制页机制150310线性地址PG=0物理地址3232苏州大学计算机科学与技术学院第33页微型计算机技术课程讲义2-4MemoryPaging存储器分页机制存储器分页机制将存储器分成长度固定的页,每页4KB。由程序产生的线性地址(linearaddress)通过分页机制转换成存储器特定位置的物理地址(physicaladdress),它使物理存储器定位于任意的线性地址上。分页单元(pagingunit)由微处理器内的控制寄存器(32位)CR0-CR4控制,这些控制寄存器保存各种全局性状态信息,影响系统所有任务的运行。它们主要提供操作系统使用。苏州大学计算机科学与技术学院第34页微型计算机技术课程讲义控制寄存器ControlRegister苏州大学计算机科学与技术学院第35页微型计算机技术课程讲义Thepagingsystemoperatesinbothrealandprotectedmode.ItisenabledbysettingthePGbitto1(leftmostbitinCR0).(Ifsetto0,linearaddressesarephysicaladdresses).CR3containsthepagedirectory“physical”baseaddress.Thevalueinthisregisterisoneofthefew“physical”addressesyouwilleverrefertoinarunningsystem.Thepagedirectorycanresideatany4Kboundarysincetheloworder12bitsoftheaddressaresettozero.Thepagedirectorycontains1024directoryentriesof4byteseach.Eachpagedirectoryentryaddressesapagetablethatcontainsupto1024entries.苏州大学计算机科学与技术学院第36页微型计算机技术课程讲义线性地址LinearAddresss苏州大学计算机科学与技术学院第37页
本文标题:Intel微机原理第2章(微处理器及其结构)-1
链接地址:https://www.777doc.com/doc-3268812 .html