




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2007. 6. 13,微机原理、汇编与接口技术,朱定华,1.1,1.2,1.3,1.4,计算机的数和编码,微型计算机的结构和工作原理,80 x86微处理器,第1章 微型计算机基础,1.5,80 x86的寄存器,80 x86的工作方式与存储器物理地址的生成,1.1.1 计算机中的数制,常用数制-二,十,十六进制,为了区别3种不同数制,约定,目前在计算机中,数几乎全部用二进制表示 为书写方便,微机中的二进制数用十六进制数缩写 人们最熟悉、最常用的是十进制数,数后加B表示二进制数 带D或不带字母符号表示十进制数 带H表示十六进制数,十进制、二进制、十六进制数之间的关系表,数制间转换,如: 1111
2、111000111B 1 1111 1100 0111B 0001 1111 1100 0111B = 1FC7H,1.二十六,如: 3AB9H = 0011 1010 1011 1001B,数制间转换,2.十六十,如: 38947=9823H,如: 1F3DH=163116215161316013 =4096125615163113 =409638404813=7997,16 38947 3 16 2434 2 16 152 8 16 9 9 0,余数倒序排列,数制间转换,3.二十 十进制数二进制数:十进制数十六进制数二进制数 二进制数十进制数:二进制数十六进制数十进制数 使用2n(2n的二
3、进制数等于1后跟n个0)和十六进制数、十进制数的对应关系(如下表所示)以及个别十进制整数和十六进制数的对应关系(如50=32H,80=64H,100=64H等) 转换,如: 38947=32768+4096+2048+32+3 =8000H+1000H+800H+20H+3H=9823H 1F3DH=2000H-(80H+40H+3H) =8192-(12864+3)=7997,1.1.2 符号数的表示方法,用数的符号和数值部分一起编码的方法表示符号数 8位(字节)、16位(字)或32位(双字)机器数的最高位是符号位。最高位为0正数,为 1负数 区分:机器数、真值、无符号数 掌握符号数的三种常
4、用表示法:原码,反码,补码,如: X1= 105=+1101001B X1原=01101001B X2=-105=-1101001B X2原=11101001B,(1)原码,注: 原码表示的数,8位数中,D7位为符号位,其余7位为数值位(为真值的绝对值) 8位原码数的数值范围为FFH7FH(-127127);16位原码数的数值范围为FFFFH7FFFH(-3276732767) 原码表示简单易懂,且与真值转换方便,但内部运算复杂,为简化计算机结构,引进了反码和补码,注: 一个负数的反码的数值部分并不是其真值的绝对值,要按位取反才能求得真值的绝对值,如: X1= 105=+1101001B X1
5、反=01101001B X2=-105=-1101001B X2反=10010110B,(2)反码,正数的补码与原码一样,符号位为0,其余位为其数值;负数的补码为其绝对值的补数,补数有两种求法: 按位取反后再加1 从最低位向最高位扫描,保留直至第一个“1”的所有“0”位,第一个“1”左边各位按位取反 如:X1= 105=+1101001B X1补=01101001B X2=-105=-1101001B X2补=10010111B 对补码表示的负数求补可以得到其绝对值 如: -105补=10010111B=97H 求补,得:01101001=69H=105,即补码表示的机器数97H的真值是-69
6、H(=-105),(3)补码,注: 一个补码数,若最高位为0,则该数即为此数的绝对值;若最高位为1,则其补数为该数的绝对值 8位补码数的范围:80H7FH(-128127).16位补码数的范围:8000H7FFFH(-3276832767) 补码数80H和8000H的最高位既代表了符号为负又代表了数值为1 1个二进制补码数的符号位向左扩展若干位后,所得到的补码数的真值不变 如:68补=44H字节, 68补=0044H字 -68补= BCH 字节, -68补= FFBCH字 微机中,符号数用补码表示!,1.1.3 二进制数的加减运算,二进制加法规则:,二进制减法规则:,0+0=0 0+1=1+0
7、=1 1+1=0 进位1,0-0=0 1-0=1 1-1=0 0-1=1 借位1,计算机把机器数均当作无符号数进行运算,即符号位也参与运算,如: 59+164=3BH + 0A4H 127160=7FHA0H =0DFH =11FH=287 无进位,CF=0 有进位,CF=1,(1)无符号数的运算,192-10=C0H-0AH =B6H =182 无借位,CF=0,10-192=0AH-C0H =-B6H=-182 有借位,CF=1,结论:对无符号数进行减法运算,其结果的符号用进位来判别:CF=0(无借位)结果为正;CF=1(有借位)结果为负,如:,2 )两个无符号数相减-被减数大于或等于减数
8、,无借位,结果为正;被减数小于减数,有借位,结果为负。,(2)符号数的运算,如:105+50 = 155 127,超出范围,产生溢出 又如:-105-50 = -155 -128 ,超出范围,产生溢出,=-155 将进位视为符号,结果正确,=65H结果为正,错误,溢出,0F=1,说明: 将多位二进制数拆成多部分运算时,数的低位部分均为无符号数,只有高位部分才为符号数 注意区分进位与溢出 溢出不同于补码运算中的进位或借位丢失 如: -50-5 = -55,判断补码运算有无溢出的方法:,设符号位向进位位的进位为CY,数值部分向符号位的进位为CS,则溢出判别式为: OF=CY CS 当OF=1时,有
9、溢出;当OF=0时,无溢出,1.1.4 二进制数的逻辑运算与逻辑电路,(1)逻辑非按位求反,(2)逻辑乘(逻辑与)按位求“与”,如:A=01100001B,B=11001011B A=10011110B,B=00110100B,规则:=0,=0,10=0,11=1 如:01100001B11001011B=0100 0001B,(3)逻辑加(逻辑或)按位求“或”,(4)逻辑异或(按位加)按位求模和,规则:00=0,01=1,10=1,11=1 如:01100001B11001011B=11101011B,规则:0+0=0,0+1=1,1+0=1,1+1=0 如:01100001B 110010
10、11B=10101010B,(5)正逻辑与负逻辑,正逻辑高电平表示逻辑,低电平表示逻辑0 负逻辑高电平表示逻辑 0,低电平表示逻辑1,1.1.5 二进制编码,即用二进制表示的十进制数,简称BCD数 (binary coded decimal),常用的是8421 BCD码,计算机里,字母、各种符号以及指挥计算机执行操作的指令,均用二进制数的组合表示,称为二进制编码,8421 BCD编码表,压缩BCD数用8位二进制数表示2个十进制数位 非压缩BCD数用8位二进制数表示1个十进制数位 如:19 压缩BCD 0001 1001 = 19H 19 非压缩BCD 00000001 00001001 = 0
11、109H,说明: 十进制数与BCD数的转换 查8421 BCD编码表直接 BCD数转换为二进制数 写出BCD数的十进制数十进制数转换为二进制数 二进制数转换为BCD数 二进制数转换为十进制数根据十进制数写出BCD数,(2)ASCII码 -字符在机内的表示 常用的ASCII码字符如表(P10表1-4):,注: (1)十进制数的ASCII码转换成BCD数 减30H BCD数转换成十进制数的ASCII码 加30H (2)将十六进制数的ASCII码转换为十六进制或将十六进制转换为十六进制数的ASCII码,要先判别ASCII码是在哪个区段内,然后再加或减30H或37H。 (3)十进制数的ASCII码转换
12、为二进制数: 将ASCII码转换为ASCII BCD数写出ASCII BCD数的十进制数将十进制数转换为二进制数 (4)二进制数转换为十进制数的ASCII码 过程与(3)相反,1.1.5 BCD数的加减运算,如:48+59=107,BCD数低位与高位之间逢“10”进1,4位二进制数之间逢“16”进1。而计算机按二进制规律运算,故BCD数进行运算后须进行调整 (1)BCD数加法,如:28-19=9,通常在微机中设有二十进制调整电路,通过调用调整指令来实现调整,(2)BCD数减法,1.2,1.1,1.3,1.4,计算机的数和编码,微型计算机的结构和工作原理,80 x86微处理器,第1章 微型计算机
13、基础,1.5,80 x86的寄存器,80 x86的工作方式与存储器物理地址的生成,位(bit)计算机所能表示的最基本、最小的数据单元。1个二进制位有两种状态“0”和“1” 字(word) 计算机内部进行数据处理的基本单位,与寄存器、ALU宽度一致每一个字所包含的二进制位数称为字长 字节(byte) 8个Bit组成一个字节,存放相邻的8位二制数.字节的长度固定 指令(instruction) 程序(program) 指令系统(instruction set),1.2.1 微型计算机常用的术语,1.2.2 微型计算机的基本结构,微型计算机的基本组成如图所示:,微机的核心部件,具有运算和控制功能,组
14、成: 算术逻辑单元ALU(arithmetic logic unit) 寄存器(register)组 控制器(control unit),1.CPU,总线是把计算机各部分有机地连接起来的一组并行导线,是各个部分之间进行信息交换的公共通道,微机的三总线: 数据总线DB 在CPU与存储器和CPU与I/O接口之间双向传送数据.其条数决定了每一次能同时传送的二进制数的位数。如:8088的数据总线为8条,一次能够传送8位二进制数,用D7D0表示,2.总线,地址总线AB 传送CPU发出的地址,以寻址存储单元或I/O端口。AB的宽度决定了计算机系统能够使用的最大的存储器容量。如:地址总线为20条,用A19A
15、0表示,可寻址220=1M的存储空间 控制总线CB 向计算机系统的各部件发送操作命令和定时信息。带有上横线的表示低电平有效,无上横线的表示高电平有效 如:ALE(address latch enable)、INTR高电平有效,MEMW、MEMR、IOR、IOW、INTA低电平有效,3.存储器(memory),(1) 存储器单元的地址和内容,(1) 存储器的分类 存储器分为内部存储器和外部存储器两大类,分别简称为内存和外存,外存也叫辅存,内存也叫主存。程序和数据以文件的形式保存在外存中,要执行的程序和要使用的数据必须事先调入内存。为了加快CPU访问内存的速度,从而提高程序的运行速度,在内存和CP
16、U之间或者CPU内部增加了存取速度较高的高速缓冲存储器,即cache。为了扩充内存容量,还将外存作为内存的辅助,给用户提供比内存大得多的逻辑存储容量,这就是所谓的“虚拟存储器”。,虚拟存储器 人们通常所指的内存是由“内存条”组成的物理存储器,物理存储器是由地址总线直接访问的存储空间,其地址称为物理地址。显然,地址总线的条数决定了物理存储器即内存的最大容量。 虚拟存储器是相对物理存储器而言的,虚拟存储器是指程序使用的逻辑存储空间,它可以比物理存储空间大得多。虚拟存储器由内存、辅存和管理部件共同组建。通过管理软件达到内存和辅存密切配合,使整个存储系统的速度接近内存、容量接近辅存。当应用程序访问虚拟
17、存储器时,必须给出虚拟地址即逻辑地址,在此过程中,先通过硬件和软件找出逻辑地址到物理地址之间的对应关系,判断要访问的是否已装入内存,如已装入则直接访问内存,否则,相应的硬件和管理软件会将要访问的有关数据块从辅存调入内存,与此同时将内存中原有的暂时不使用的某数据块调回辅存,并且将虚拟地址转变为物理地址。,高速缓冲存储器 高速缓冲存储器即高速缓存Cache是使用速度与CPU相当的静态随机读/写存储器芯片组成的小容量存储器,用来存放微处理器最近要用的指令和数据。 Cache中的内容其实是内存中一小部分内容的复制品,内存中经常被微处理器使用到的一部分内容要烤页到Cache中,并不断地更新Cache中的
18、内容,使得Cache中总是保存有最近经常被微处理器使用的一部分内容。 Cache中存放的内容除了内存中的指令和数据外,还要存放这些指令和数据在内存中的对应地址。当微处理器存取指令和数据时,Cache截取微处理器送出的地址,并判别这个地址与Cache中保存的地址是否相同。若相同,则从Cache中存取该地址中的指令或数据;否则就从内存中存取。,(3) 存储器的操作 CPU对存储器的操作有读和写两种,读操作是CPU将存储单元的信息取到CPU内部,而写操作是CPU将其内部的信息传送到存储单元保存。写操作要改变被写存储单元的内容,而读操作则不改变被读存储单元的内容。向存储单元存放或取出信息,都称为访问存
19、储器。访问存储器时,先由地址译码器将送来的单元地址进行译码,找到相应的存储单元;再由读写控制电路,根据送来的读或写命令确定访问存储器的方式,完成读出(读)或写入(写)操作。,4.总线插座和接口 外部设备通过总线插座和接口与计算机连接。设置接口的主要原因 外设的工作速度远低于CPU的速度 外设表示信息的格式与计算机不同 接口向计算机报告设备的状态,传达计算机命令等,(5)I/O设备,输入设备:键盘、模数转换器、扫描仪等 输出设备:显示器、打印机、绘图机等 输入/输出设备:磁盘和光盘等,1.2.3 计算机的工作原理,CPU、存储器、I/O接口、外部设备构成了计算机的硬件(hardware),光有这
20、样的硬件还只是具有了计算的可能。计算机要真正能够进行计算还必须有多种程序的配合 当人们要解决问题时,首先将问题程序化,形成指令序列,然后将它存入存储器中,再由CPU的控制器和ALU依据程序中指令的顺序周而复始地取出指令,分析指令,执行指令,最后输出程序结果.即“程序存储和程序控制”,1.2,1.1,1.4,计算机的数和编码,微型计算机的结构和工作原理,80 x86微处理器,第1章 微型计算机基础,1.5,80 x86的寄存器,80 x86的工作方式与存储器物理地址的生成,1.3,1.3.1 8086/8088,(1)执行单元EU(execution unit),(2)总线接口单元BIU(bus
21、 interface unit),EU负责执行指令,完成两种操作:算术逻辑运算、计算存储器操作数的偏移地址,BIU完成所有的总线操作 EU和BIU并行工作,可以同时进行读/写操作和执行指令的操作,1.3.1 8086/8088,1.3.2 80286,内部和外部数据总线都是16位,地址总线为24位,可寻址224字节即16MB内存,支持虚拟存储器管理技术,虚拟存储空间可达1GB(230)。 微处理器的组成: 地址单元AU(Address Unit) 总线单元BU(Bus Unit) 指令单元IU(Instruction Unit) 执行单元EU AU中的存储器管理机构使用段式管理方式,首次实现了
22、虚拟存储器管理,1.3.3 80386,内部和外部数据总线都是32位的,地址总线为32位,可寻址4GB,虚拟存储空间可达64TB(246) 微处理器的组成: 总线接口单元BIU 指令译码单元IDU(Instruction Decode Unit) 指令预取单元IPU(Instruction Prefetch Unit) 执行单元EU 分段单元SU(Segmentation Unit) 分页单元PU(Paging Unit),1.3.4 80486,内部数据总线为64位,外部数据总线为32位,地址总线为32位) 微处理器的组成: 总线接口单元、指令译码单元 指令预取单元、执行单元 分段单元 分页
23、单元以及浮点处理单元(FPU) 高速缓存(Cache memory),1. Pentium微处理器的内部结构,1.3.5 Pentium,(1)总线接口单元 总线接口单元实现微处理器与微型计算机系统总线的连接,其中包括64位数据线、32位地址线和众多的信号线,以此实现微处理器与外部的信息交换。Pentium微处理器与外部交换数据可以是64位还可以是32位、16位或者8位。 (2)分段单元和分页单元 分段单元将程序提供的逻辑地址转换为线性地址,分页单元将线性地址转换为物理地址。 分页是将段分为多个固定大小的页面(通常为4KB),分页支持虚拟存储器环境。内存中只保留程序访问的页面,而众多的页面被存
24、储在磁盘中。当程序要访问线性地址空间中的某个地址时,分页单元先将线性地址转换为存储器的物理地址,然后执行对该地址的读操作或写操作。如果所访问的页面不在物理内存中,微处理器就会暂时中断该程序的执行,由操作系统将所需的页面从磁盘读入物理内存中,然后接着执行被中断的程序。,(3)U流水线和V流水线 Pentium采用两条流水线,这两条流水线都拥有自己的算术逻辑单元ALU、地址生成电路和数据Cache的接口。这种双流水线结构允许Pentium可以一次执行两条指令,每条流水线中执行一条。 (4)指令Cache和数据Cache 在Pentium中,指令Cache和数据Cache两者分开,从而减少了指令预取
25、和数据存取操作之间可能发生的冲突,并可提高命中率。Pentium的数据Cache有两个接口,分别与U和V两条流水线相连,以便同时和两条流水线交换数据。 (5)指令预取单元、指令译码单元和控制ROM 指令预取单元从指令Cache中预先取指令,每次取两条指令。如果是简单指令,通过指令译码单元译码后,将两条指令分别送到U流水线和V流水线执行。如果是复杂指令,通过控制ROM将其转换成对应的一系列微指令,再送到U流水线和V流水线执行。复杂指令对应的微指令存放在控制ROM中。微指令是微处理器能够直接执行的指令,它的长度是固定的,因此很容易在流水线中进行处理。,(6)控制单元 控制单元的功能是通过对来自指令
26、译码单元和和控制ROM中微程序的解析,控制U流水线、V流水线和浮点处理单元的正常运行。 (7)分支转移目标缓冲器 分支转移目标缓冲器在遇到分支转移指令时用来预测转移是否发生,并据此为分支指令处的指令提供预取地址。 (8)浮点处理单元 浮点处理单元主要用于浮点运算,使得浮点运算的速度得到提高。,1.3.5 Pentium,2.Pentium微处理器的先进技术 (1)超标量流水线 (2)分支转移的动态预测 (3)独立的指令Cache和数据Cache (4)重新设计的浮点单元,1.2,1.1,计算机的数和编码,微型计算机的结构和工作原理,80 x86微处理器,第1章 微型计算机基础,1.5,80 x
27、86的寄存器,80 x86的工作方式与存储器物理地址的生成,1.4,1.3,1.4.1 8086/8088 的寄存器,通用寄存器共8个:AX,BX,CX,DX,SP,BP,SI,DI,均为16位,在EU部件中 AX,BX,CX,DX均可分成高8位和低8位,作为独立的8位寄存器使用:AH,AL,BH,BL,CH,CL,DH,DL AX累加器,BX基址寄存器 CX计数寄存器,DX数据寄存器 SP堆栈指示器,BP基址指示器 SI源变址寄存器,DI目的变址寄存器,1.通用寄存器,IP 硬件电路,能自动跟踪指令地址。 在开始执行程序时,赋给IP第一条指令的地址,然后每取一条指令,IP的值就自动指向下一条
28、指令的地址,2.指令指示器IP(instruction point),9个标志位,其中6个状态标志,3个控制标志,3.状态标志寄存器(status flags),进位标志位CF 加减运算执行后,最高位有进位或借位,CF=1;无进位或借位,CF=0 主要用于多字节加减运算 辅助进位标志位AF 最低4位D3D0位有进位或借位,AF=1;无进位或借位,AF=0 用于BCD数的算术运算(调整)指令,(1)状态标志,反映EU执行算术或逻辑运算后的结果,3.状态标志寄存器(status flags),溢出标志位OF 运算结果超出了机器数所能表示的数的范围OF=1;反之,OF=0 该标志表示运算结果是否产生
29、了溢出 符号标志位SF 结果为负数,SF=1;结果为正数,SF=0 零标志位 结果为0,ZF=1;结果不为0,ZF=0 奇偶标志位PF 结果低八位中1的个数为偶数,PF=1;为奇数,PF=0。用于检查数据在传送过程中是否发生错误,3.状态标志寄存器(status flags),方向标志位DF 控制数据串操作指令的步进方向 DF=1,地址增址;DF=0,地址减址 中断允许标志位IF 控制CPU是否开中断. IF=1, CPU开中断 IF=0, CPU关中断 追踪标志位TF(陷阱标志位) TF=1,CPU单步执行程序,常用于程序的调试 TF=0,CPU正常执行程序,(2)控制标志,用于控制CPU的
30、操作。,3.状态标志寄存器(status flags),实地址方式使用20条地址线,存储器的物理地址必须用20位二进制数表示。ALU只能处理16位的地址运算,与地址有关的寄存器:指令指示器,堆栈指示器,间接寻址的寄存器BX,BP,SI,DI等都只有16位。因此在实地址方式下把20位的存储器地址分成若干个段来表示。段寄存器就是用来存放段的起始地址的高16位地址的寄存器。段内再由16位二进制数来寻址,段内寻址的16位二进制数地址是存储单元到段起始地址的距离,称为段内偏移地址。 存储单元的地址由段基址的高16位或段寄存器和偏移地址两部分组成,用冒号连接段基址的高16位或段寄存器和偏移地址,像这样表示
31、的地址称为逻辑地址。 段基址的高16位:偏移地址 或 段寄存器:偏移地址。,4.段寄存器,CS-存放代码段的段基址的高16位 SS-存放堆栈段的段基址的高16位 DS-存放数据段的段基址的高16位 ES-存放附加数据段的段基址的高16位,1.4.2 80286的 寄存器,在8086的基础上新增: 16位的机器状态字寄存器MSW:只定义了低4位 标志寄存器EFLAGS增加两个标志位: 任务嵌套标志位NT(nested task )和I/O特权级标志位IOPL(I/O privilege level field)分别位于D14、 D13和D12 3位,1.4.3 80386的 寄存器,1.基本寄存
32、器,(1)通用寄存器,EAX,EBX,ECX,EDX,ESP,EBP,ESI,EDI,均为32位 低16位AX、BX、CX、DX、SP、BP、SI、DI,用法与8086完全相同,1.4.3 80386的 寄存器,(2)指令指示器EIP和标志寄存器EFLAGS,均为32位,它们的低16位即是8086的IP和FLAGS,并可单独使用 工作于保护方式下时,EIP是32位的寄存器;工作于实地址方式下时,EIP就是16位的寄存器IP 保留了80286的所有标志,并在高位字的最低两位D17和D16增加了虚拟8086方式标志VM和恢复标志RF,1.4.3 80386的 寄存器,(3)段寄存器,6个段寄存器:
33、CS,SS,DS,ES,FS,GS,均为16位FS、GS的作用与ES相同 段基址与段寄存器的关系由微处理器80386的工作方式确定,1.4.3 80386的 寄存器,2.系统寄存器,(1)系统地址寄存器,全局描述符表寄存器GDTR 中断描述符表寄存器IDTR 局部描述符表寄存器LDTR 任务寄存器TR 主要用来在保护模式下管理用于生成线性地址和物理地址的个系统表,1.4.3 80386的 寄存器,(2)控制寄存器 控制寄存器有个:CR0CR3,CR1为备用。主要用来进行分页处理。 (3)调试寄存器 DR0DR7,主要用来设置程序的断点 (4)测试寄存器 TR6和TR7,用来进行页处理,1.4.
34、4 80486的 寄存器,新增加3个测试寄存器TR3TR5用于片内Cache测试以及浮点处理单元的浮点寄存器 80486除了保留80386的所有标志外,在D18位增加了对准检查标志AC(alignment check),1.4.5 Pentium的 寄存器,1.基本寄存器,(1)通用寄存器,EAX,EBX,ECX,EDX,ESP,EBP,ESI,EDI,均为32位 低16位AX、BX、CX、DX、SP、BP、SI、DI,用法与8086完全相同,1.4.5 Pentium的 寄存器,(2)指令指示器EIP,EIP是32位的寄存器,它用来存放下一条要执行指令的偏移地址 低16位即是8086的指令指
35、示器IP,可单独使用 微处理器工作于保护方式下时,EIP是32位的寄存器;工作于实地址方式下时,EIP是16位的指令指示器IP。,1.4.5 Pentium的 寄存器,(3)标志寄存器EFLAGS,1.4.5 Pentium的 寄存器,(4)段寄存器,6个16位段寄存器:CS、SS、DS、ES、FS、GS。 在实地址方式,段寄存器用来存放段的起始地址即段基址的高16位地址;CS、SS、DS和ES的作用与8086相同,FS和GS的作用与ES相同。在虚地址保护方式,段寄存器中存放的是选择字,选择字如下图所示。CS 、SS、DS中的描述符索引分别指向当前段对应的段描述符,ES、FS和GS中的描述符索
36、引指向当前3个附加数据段对应的段描述符,由此可以找到当前各个段的段基址。,1.4.5 Pentium的 寄存器,2.系统寄存器,(1)系统地址寄存器,GDTR:48位,其中高32位是全局描述符表GDT的线性基地址,低16位是GDT的界限 IDTR:48位,其中高32位是中断描述符表IDT的线性基地址,低16位是IDT的界限 LDTR:16位,用来存放描述符索引,据此可在全局描述符表GDT中检索到局部描述符表LDT对应的描述符 TR:16位,用来存放描述符索引,据此可在全局描述符表GDT中检索到任务状态段TSS对应的描述符,1.4.5 Pentium的 寄存器,(2)控制寄存器,CR0:用来保存
37、系统的标志, CR0的低位字是机器状态字MSW(machine status word),1.4.5 Pentium的 寄存器,CR2和CR3:是两个用于存储器管理的地址寄存器。在分页操作时,如果出现异常,CR2中则会保存异常处的32位线性地址。CR3的前20位保存着页目录表的基地址,CR3的D3位和D4位用来对外部Cache进行控制。 CR4:只用了最低7位,所用位的定义如下图所示。,1.4.5 Pentium的 寄存器,(3)调试寄存器,8个调试寄存器是DR0DR7主要用来设置程序的断点和程序调试 DR0DR3:保存4个断点的线性地址 DR4和DR5:Intel公司保留 DR6:调试状态寄
38、存器,在调试过程中用来报告断点处的状况 DR7:配合设置的断点控制寄存器,用来设置控制标志,控制断点的设置、设置条件、断点地址的有效范围以及是否进入异常中断等 (4) 测试寄存器 Pentium有18个测试寄存器,用寄存器号00H14H来表示, 其中有3个号未使用。每个测试寄存器有一个特定的测试功能。 Pentium有专用的读/写指令来访问这些测试寄存器。,1.4.5 Pentium的 寄存器,3.浮点寄存器,(1)数据寄存器 数据寄存器有8个,它们是R0R7。每个寄存器有80位,80位的浮点数中1位为符号位、15位为阶码、64位为尾数 (2)标记字寄存器 标记字寄存器是1个16位的寄存器,每
39、2位为1个标记,共8个标记,分别指示8个数据寄存器的状态。,1.4.5 Pentium的 寄存器,(3)状态寄存器 16位的寄存器,用来指示浮点处理单元的当前状态,1.4.5 Pentium的 寄存器,(4)控制字寄存器,1.4.5 Pentium的 寄存器,(5) 指令指示器和数据指示器 存放发生故障的指令地址及其操作数的存储地址,1.2,1.3,1.4,计算机的数和编码,微型计算机的结构和工作原理,80 x86微处理器,第1章 微型计算机基础,1.5,80 x86的寄存器,80 x86的工作方式与存储器物理地址的生成,1.5,1.1,80 x86的工作方式有4种: 实地址方式(real a
40、ddress mode) 虚地址保护方式 (protected virtual address mode) 虚拟8086方式(virtual 8086 mode) 系统管理方式(system management mode) 8086/8088只有实地址方式1种工作方式 80286有实地址方式和虚地址保护方式2种工作方式 80386和80486有实地址、虚地址保护方式和虚拟8086方式种工作方式。 Pentium有实地址方式、虚地址保护方式、虚拟8086方式和系统管理方式4种。,1.5.1 80 x86的工作方式,1. 实地址方式 实地址方式是实在的1MB的物理地址空间的工作方式,实地址方式采
41、用存储器地址分段的方法,使两个16位的地址实现了对1MB地址空间寻址的20位的物理地址。在实地址方式下,操作数的默认长度为16位,可以运行8086的全部指令。80 x86除了虚地址保护方式指令外,其余指令都可以在实地址方式下运行。8086和80286微处理器允许4种存储器分段,段寄存器为CS、DS、SS和ES。80386以上微处理器允许6种存储器分段,段寄存器为CS、DS、SS、ES、FS和GS。,2. 虚地址保护方式 虚地址保护方式是支持虚拟存储器、支持多任务、支持特权级与特权保护的工作方式。在虚地址保护方式下,32位微处理器可访问的物理空间为4GB (232字节),由辅存和内存提供的虚拟空间可达64TB(246字节)。该方式对如此之大的虚拟存储空间采取保护措施,使系统程序和用户的任务程序之间以及各任务程序之间互不干扰地运行。最
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 交通运输项目防止串标、抬价、恶性竞标的措施
- 勘探项目现场管理办法
- 公司安全奖惩管理办法
- 体育场馆抢工赶工措施
- 公司租房合同管理办法
- 关于伙食经费管理办法
- 包头医院制剂管理办法
- 军人资产管理办法细则
- 大班健康拥挤问题课件
- 关于物业长效管理办法
- 快速康复外科理念ERAS与围手术期护理
- 大华- 能源 电动汽车充电站可视化监控系统 解决方案
- 教师招聘公共基础知识(教育学、心理学-教育法规)试题
- 2024-2024年同等学力计算机综合真题答案解析
- 培训网格员课件
- EXCEL函数宝典应用实例
- 矿井通风与安全课件
- 我是王阳明:知行合一的心学之旅
- 2023年北京市海淀区社区工作者招聘考试真题
- 物流分拣中心劳务承揽服务方案(投标方案)
- 配产配注方法培训
评论
0/150
提交评论