版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
[www ]网络课堂系 考纲要 复习要 计算机发展历 计算机系统层次结 计算机硬件的基本组 计算机软件的分 计算机的工作过 计算机性能指 考纲要 复习要 数制与编 进位计数制及其相互转 真值和机器 BCD 字符与字符 24定点数的表示和运 定点数的表 定点数的运 浮点数的表示和运 浮点数的表 浮点数的加/减运 算术逻辑单元 串行加法器和并行加法 算术逻辑单元ALU的功能和结 第三章器层次结 考纲要 复习要 3.1器的分 3.2器的层次化结 半导体随机存取 SRAM器的工作原 DRAM器的工作原 只读 主器与CPU的连 2[www ]网络课堂系 双口RAM和多模 高速缓冲 程序的局部性原 Cache的基本工作原 Cache和主存之间的映射方 Cache中主存块的替换算 虚拟 虚拟器的基本概 页式虚拟 段式虚拟 段页式虚拟 TLB(快表 第四章指令系 考纲要 复习要 指令格 指令的基本格 定长操作码指令格 扩展操作码指令格 指令的寻址方 有效地址的概 数据寻址和指令寻 常见寻址方 第五章处理 考纲要 复习要 CPU的功能和基本结 指令执行过 数据通路的功能和基本结 控制器的功能和工作原 硬布线控制 微程序控制 指令流水 指令流水线的基本概 量和动态流水线的基本概 第六章总 考纲要 复习要 3[www ]网络课堂系 总线概 总线的基本概 图2-6- 4种类型的三态 总线的分 总线的组成及性能指 总线仲 集中仲裁方 分布仲裁方 总线操作和定 同步定时方 异步定时方 总线标 第七章输入输出系 考纲要 复习要 I/O系统基本概 外部设 输入设 输出设 外 I/O接口的功能和基本结 I/O端口及其编 I/O方 程序查询方 程序中断方 DMA方 通道方 参考文 4系系第一章计算机系统(一)计算机计算机发展史,程序的概(二)计算机由5大基本部件组成:运算器、控制器、器、输入设备和输出设备系统软件与应(三)计算机吞吐量、响应时间 时钟周期、主频、CPI、 执行时间;MIPS、MFLOPS计算机发展历程计算机的发展程序概念序控制”的计算机结构 程序概念可以简要地概括为以下几点①计算机(指硬件)应由运算器、器、控制器、输入设备和输出设备5大基本部件 计算机内部采用二进制来表示指令和数据。能、多用途方向发展,另一极则是巨型机向更巨型化、速、并行处理、智能化方向发展。计算机系统层次结构第6第5第4
第3第3第2第1
第0图2-1-1第0级是硬联逻辑级,这是计算机的内核,由门、触发器等逻辑电路组成。计算机硬件的基本组成器数器数地址或指令控制器输入设备运算器 输出设图2-1-2计算机硬件硬件系统由5大基本部件输入设备输出设备器 在计算机系统中,规模较大的器往往分成若干级,称为系统。如图2-1-3所示的是常见的三级系统。主器可由CPU直接,存取速度快,但容量较小,一般用来存放当前正在执行的程序和数据。辅助器的容量大,价格较低,但存取速度较慢, 运算
图2-1-3三级系控制控制器中包括一些的寄存器计算机软件的分类通常将系统软他信息、自动调度用户作业程序、处理各种中断。它是用户和计算机之间的接口,提供了软件的开发环境和运行环境。常见的操作系统有批处理系统、分时操作系统、实时操作系统等。⑤计算机网络软件。为计算机网络配置的系统软件。应用软件是用户或第软件公司为各自业务开发和使用的各种软件,种类繁多有一条明确的硬件与软件的分界于程序设计软件在逻辑上是等价的。 A.运算器、器、控制 B.外部设备和主C.主机和实用程 D.配套的硬件设备和软件系【答案】D【例1.2】由0、1代码组成的语言,称为 A.汇编语 B.自然语 C.机器语 D.高级语【答案】C计算机的工作过程加寄存器,一个来自主存,运算结果则放在累加寄存器中。图2-1-4(b)中的 是用来暂存从主存中读出的数据或写入主存的器
主取数取数加法减法存数停abc
图2-1-4计算机的控制器将控制指令逐条的执行,最终得到正确的结果。步骤如下: 执行取数指令,从主存5号单元取出数a,送入累加寄存器中。 执行存数指令,把累加寄存器的内容a+b−c存至主存8号单⑤执行停机指令,计算计算机性能指标1.机器字长定的,如:In80x86系列中,一个字等于16位;IBM303X系列中,一个字等于32位。主存容量和存取速度一个 器所 的全部信息量称为主存容量。通常,以字节数来表 容量 表2-1-1K,M,G,T,P单通常实际表210=1220=1048230=1073741240=1099511627250=1125899906842主存的存取速度通常由存取时间Ta、存取周期Tm和主存带宽Bm等参数存取时间Ta又称为时间或读写时间,它是指从启动一次器操作到完成该操作所息的最大数量,单位为字节每秒或位每秒。运算速度储器、I/O操作、操作系统开销等时间)的总和。CPU时钟CPI参数经常用IPC表示,即每个时钟周期执行的指令数。IPC=1CPU 时钟频上式表明,CPU期数;③指令条数IC。MIPS表示每秒执行多少百万条指令。对于一个给定的程序,MIPS定义 指令条 =主频=主频执行时间 MFLOPS表示每秒执行多少百万次浮点运算。对于一个给定的程序,MFLOPS执行时间【 1.3】用于科学计算的计算机中,标志系统性能的主要参数是 A.主 B.主存容 【答案】D性能的主要参数,也就是说主频高和主存大的计算机并不一定就能获得好的性能。MIPS和MFLOPS都是标志系统性能的主要参数,MIPS用来描述计算机的定点运算速度,MFLOPS1.4】下列选项中,能缩短程序执行时间的措施是(I.提高CPU时钟频率,Ⅱ.优化数据通路结构,IIIA.仅I和 C.仅Ⅱ和 【答案】D【分析】一般说来,CPU时钟频率(主频)越高,CPU的速度就越快;优化数据通路结【例1.5】微机A和B是采用不同主频的CPU,片内逻辑电路完全相同若A机的CPU主频为8MHz,B12MHzA机的CPU如A机的平均指令执行速度为0.4MIPS,那么A(3)B机的平均指令执行速度为多少?【答(1)A机的CPU时钟周期为0.125μs(2)A机的平均指令周期为2.5μs(3)B机的平均指令执行速度为0.6MIPS【分(1)ACPU主频8MHz,所以ACPU时钟周期=1÷8MHz=0.125μs(2)A机的平均指令执0.4MIPS,所以A机的平均指令周期=1÷0.4MIPS=2.5μs辑电路完全相同,所以B机平均每条指令的时钟周期数CPIB=20。B12MIPS0.6MIPS 第二章数据的表示和(一)数制与编码计算机中常用的进位计数制;各种数制间的互无符号数和带符号数;真值及原码、补码、反码3种不同的BCDASCII码、汉字奇偶、海明和循环冗余(二)定点数的表示和运算定点小数与定点整数的表(三)浮点数的表示和运算浮点数的表示范围;IEEE754浮点数的加/减运(四)算术逻辑单元并行加法器的进位产生和传递;并行加法器的快速进位。算术逻辑单元ALU在计算机中往往会用到不同的进位计数制,对于数值数据和非数值数据(字符和汉字进位计数制及其相互转换进位计数制的基本概念10,每个数位计满10就向进位,即逢十进一。制数4952,数码“4”表示4000,该位的权为1000,这一位所代表的数值等于数码4乘以常数1000,即4×103,“9”表示900,该位的权为100,这一位所代表的数值等于数码9乘以常数100,即9×102……。所以,一个数的数值大小就是它的各位数码按权相加,如:由此可见,任何一个十进制数都可以用一个多项式来表示,推而广之,一个基数为r的进制数可表示为:(N)r=Kn×rn+Kn-1×rn-1+…+K0×r0+K-1×r-1+…+K-m×r-
kir式中:ri为第i位的权,Ki的取值可以是0,1,…,r−1共r个数码中的r进制数的进位原则是:逢r进一【例2.1】若算式131−45=53成立,表明此运算的进位计数制是 A.六进 B.七进 C.八进 D.九进【答案】B【分析】将原算式变成53+45=131,个位数逢七进一,所以是七进制。计算机中常用的进位计数制在计算机中最常用的是二进制、八进制和十六进制。二进制表示2i。表2-2-1列举了常用的二进制数的权值,请读者自行熟记。表2-2-1权权权权2-2-2-2-1248计算机采用二进制的主要原因有以下几点:理器件来表示两个数码:“01”。③工作可靠由于采用两种稳定状态来表示数码,使数据的、传送和处理都变得可写起来不方便,也不好读,不好懂。为了书写和口读的方便,人们通常使用八进制和十六进制来弥补二进制的不足。r=8=233位数码编为一组就是一位八进制数码,两者之间的转十六进制数的基数为16,逢十六进一,每个数位可取16个不同的数码和符号(0,1,…,9,A,…,F)中的任意一个A~F表示十进制数值10~15。因为r=16=24,故4位二合数,在转换时应以小数点为界。其整数部分,从小数点开始往左数,将一串二进制数分为3位一组或4位一组,在数的最左边可根据需要0”;对于小数部分,从小数点开始往右数,也将一串二进制数分为3位一组或4位一组,在数的最右边也可根据需要随意0最终使总的位数成为3或4的倍数,然后分别用相应的八进制或十六进制数取代之。例如: 表2-2-2十进八进十六进0001112223334445556667778899ABCDEF各种数制间的相互转换100011.1011B=1×25+1×21+1×20+1×2-1+1×2-3+1×2-4E6.CH=4×162+14×161+6×160+12×16-十进制整数转换为任意进制整数的规则是:除(以)基取余;先余为低,后余为高。【例2.2】将十进制数327转换成二进制数。【解答】采用除基取余法,基数=2 …(低位 …↑ … … …系2…25…22…21…()0所以 转换,不同的是此时应当用8或16连续地去除十进制整数。十进制小数转换为任意进制小数的规则是:乘(以)基取整;先整为高,后整为低。【例2.3】将十进制数0.6875转换成二进制数。【解答】采用乘基取整法,基数=2×2… ×2…×2…×2↓…(低位所以转换,不同的是此时应当用8或16连续地去乘十进制小数。了表2-2-1列出的二进制数每一位上的权值,就很容易将这个二进制数写出来。例如:=28+26+22+21+20+2-1+2-3+2- 真值和机器数在计算机中,采用数字化方式来表示数据,数据有无符号数和带符号数之分。无符号数N2=11001,表示无符号数25系系 带符号数定二进制数的最为符号位,“0”表示正号,“1”表示负号。这种在计算机中使用的表N1=01001,表示+9原码表示法{[X]={原
0X22nX2n|X 2nX【例2.4】写出X1=1101和X2=–1101的原码表示形式,假设字长为5【解答】 [X1]原 [X2]原 在原码表示中,真值0有两种不同的表示形式:【例2.5】8位原码能表示的不同数据的个数是 【答案】C【分析】8位原码能表示的不同数据的个数共28−1个,其中127个正数,127个负数,还有0。这是因为在原码表示中,零有两种表示形式,[+0]原= ,[−0]原= 补码表示法补码表示法的符号位表示与原码相同,其数值部分的表示与数的正负有关:对于正数,数值部分与真值形式相同;对于负数,将真值的数值部分按位取反,且在最低位上加“1”。若真值为纯整数,它的补码形式为XsX1X2…Xn,其中Xs表示符号位。补码的定义为[X]={补
0X2 (mod2n1X2n1|X 2nX【例2.6】写出X1=1101和X2=–1101的补码表示形式,假设字长为5【解答】 [X1]补 [X2]补=2n+1+X=25+(–1101)=在补码表示中,真值0的表示形式是[+0]补=[–0]补当X为正数时,[X]补=[X]原=X当X为负数时,其[X]补等于把[X]原除去符号位外的各位求反后再加“1当X为负数时,由[X]原转换为[X]补的另一种更有效的方法是:自低位向,遇到的第一个“1”及其右部的“0”保持不变,左部的各位取反,符号位保持不变。【例2.7】已知[X]原=11110011000,求[X][X]补=1000110不变取 不这种方法避免了加1运算,是实际求补线路逻辑实现的依据反码表示法若真值为纯整数,它的反码形式为XsX1X2…Xn,其中Xs表示符号位。反码的定义[X]={反
0X2 (mod(2n11) 2nX【例2.8】写出X1=1101和X2=–1101的反码表示形式,假设字长为5【解答】 [X1]反 在反码表示中,真值0也有两种不同的表示6.3种机器数的比较原码码和反码这3种机器数既有又有各自不同的性主要区别有以下几点: 对于正数它们都等于真值本身,而对于负数各有不同的表示。 对于真值0,原码和反码各有两种不同的表有唯一的一种表示表2-2-3列出了真值与3种机器数间的对照。表中设字长等于4位(含一位符号位)表2-2-3真值与3[X]原、[X]反、[X][X][X][X]十进二进十进二进————BCD表2-2-4常见的BCD十进制84212421301234567898421码又称为自然BCD码,简称NBCD码,4位二进制代码的位权从高到低分别为1,这种编码的主要特 它是一种码,设其各位的值为b3b2b1b0,则它所表示的十进制数D=8b3+4b2+2b1+1b0 不允许出现 。这个代码 码中是码 这种编码各位的位权从高到低分别为2,4,2,1,其主要特点是: 它也是一种码,所表示的十进制数为D=2b3+4b2+2b1+1b0②它又是一种对9的自补码,即某数的2421码,只要自身按位取反,就能得到该数对9补数的2421码。例如:的 ,3对9的补数是6,而的 不允许出现 。这个代码 码中是码3余3码是一种无权码,从表2-2-4中可以看出,余码是在 不允许出现 ~1111。这6个代码在余3码中是码【例2.9】某数在计算机中用余3码表示为011110001001,其真值为 【答案】A【分析】余3码是在8421码的基础上+3。注意,对应的真值是十字符与字符串1.字符编码字符编码方式有很多种,现在用的最广泛的是息交换标准字符码(ASCII)。标准的ASCII码用7位二进制表示一个字符,它包括10个十进制数字(0~9)、52个英文大写和小写字母(A~Z,a~z)、34个符号和32个控制符号,共计128个字符。在128个字符中有96个是可打印字符。ASCII字符编码表如表2-2-5所示。由表中可见,数字和英文字母都是按顺序排列知道其中一个的二进制代码,不要查表就可以推导出其他数字或字母的二进制代码。表2-2-5ASCII0@P`p!1AQaq"2BRbr#3CScs$4DTdt%5EUeu&6FVfv'7GWgw(8HXhx)9IYiy*:JZjz+;K[k{,<L\l|-=M]m}.>N↑n~/?O_o0~9的高3位编码为01140000~1001去掉3位或将3位清零,只保留低4位,好是二进制形式的0~9。这样既满足了正常的排序关系,又有利于实现ASCII编码与二进制数之间的转换。对应关系,差别仅在b5这一位上,若为0,则是大写字母,若为1,则是小写字母。利用此规字符串是指一串连续的字符。通常,它们在器中占用一片连续的空间,每个字节存放一个字符代码,字符串的所有元素(字符)在物理上是邻接的,这种字符串的方法称为向量法,它是最简单、最节省空间的方法。但是,当字符串需要进行删除和插入操作汉字编码汉字国标码汉字国标码亦可称为汉字交换码,主要用于汉字信息处理系统之间或者通信系统之间交 此最多能表示出128×128=16384个汉字。汉字区位码区位码将汉字编码GB2312-中的 【例2.10】已知汉字“春”的区位码为“20–26”,计算它的国【答案】国标码为343AH【分析】首先将十进制的区位码转换为十六进制,再加上2020H第一字第二字区位码十进↓↓十六进 国标码汉字机内码汉字可以通过不同的输入码输入,但在计算机内部其内码是唯一的。因为汉字处理系统要保证中西文的兼容,当系统中同时存在ASCII码和汉字国标码时,将会产生二义性。例如:有两个字节的内容为30H和21H0!”的ASCII码。为此,汉字机内码应对国标码加以适当处理和变换。例如,上述“啊”字的国标码是3021H,其机内码则是B0A1H汉字字形码10”。16×16、24×24、32×3248×48的点阵结构。显然,点阵越大,输出汉字的质量越高,每个汉字所占用的字节数也越高,如表2-2-6所示。表2-2-6字点阵(行×列字节特显示字有笔锋,可分字体笔锋清晰,字能表示汉字字形码在汉字输出时要经常使用,所以要把各个汉字的字形信息固定起来,存是指那些能够发现错误或能够自动纠正错误的数据编码。奇偶奇偶是一种最简单的数据,可以检测出一位错误(或奇数位错误),但不奇偶的编偶校验——整个中“1”的个数为偶数。奇偶11图2-2-1表2-2-7给出几个字节的奇偶的编码结果表2-2-7奇偶实有效信息(8位奇(9位偶(9位在表2-2-7所示的奇或偶中,最高一位为校验位,其余8位为信息位奇偶的校奇偶的编码和校验是由专门的电路实现的常见的有并行奇偶统计电路如图2-2-2奇形 偶形
AABD7 D5 D3 D1D0D图2-2-2偶形成=D7D6D5D4D3D2D1奇形成=D7D6D5D4D3D2D1偶校验出错=DD7D6D5D4D3D2D1奇校验出错=DD7D6D5D4D3D2D1下面以奇校验为例,说明对主存信息进行奇偶检验的2.11】已知大写英文字母“AASCII41H,现字母“F”被存放在某个单元中,若采用偶校验(假设最作为校验位),则该单元中存放的十六进制数据是(。 【答案】B【分析】英文字母在ASCII编码表中按顺序排列,因为“A”的ASCII码值为41H,而“F”是第6号字母,所以“F”的ASCII码值应为46H= B。标准的ASCII码为7位,在7位数前面增加1位校验位“F”的ASCII码中1的个数有3个,按照偶校验规则,偶校 ,则表明传送( 【答案】C例如,4个字节组成的一个信息块,纵向、横向均约定为偶校验,各校验位取值如下:横向校第一字11001011→1第二字01011100→0第三字10011010→0第四字10010101→0↓↓↓↓↓↓↓↓纵向校验位 交叉校验可以发现两位同时出错的情况,这与前述的简单奇偶校验相比要保险多了。海明检验码海明码也是广泛采用的一种有效的,主存的ECC校验采用的就是与此类似的校验引起有关的几个校验位的值发生变化,这不但可以发现错误,还能错误的位置,为自动表2-2-8信息位N值与校验位KNK45678一个字节由8位二进制N=8,按表2-2-8查出K=5,故海明码的总位数为13可表示为:
H13H12…H2 校验位Pi(i=1~4)的偶校验的在这种安排下,每一位信息位都均匀地出现在3个Pi值的形成关将接收到的海明码按如下关系进行偶校校验得到的结果值S5~S1(指误字),它能反映13位海明码的出错情况:①当S5~S1为00000时,表明无错。 当S5~S1中仅有一位不为0,表明是某一校验位出错,出错位是该Si对应的Pi明,此时不仅能检查出一位错,而且能准确地定位,因此可以纠正这个错误(将该位变反)。 当S5~S1中有4位或5位不为0时,表明出错情况严重,系统工作可能出现故障。②和④两种出错的情况列于表2-2-9中。若表中仅有一个Si不为0,表示Pi出错,因为是校验位出错,故此时并不需要校正它们。当5个Si位有3个为1时,表示是某一信息位Di出错。出错信息位的海明码位号由S4~S1这4位的译码值(分别为12,11,10,9,7,6,5,3)。例如,当S5~S1=00111时,S4~S1的译码值为7,即对应H7(也就是D4)位出错。表2-2-9海明位110110011010001111100000000100001111000系系00001110010011100100111001【例 】设有一个位信息 ,试求海明编码的生成和校验过程【分析】发送方生成海明码,其中校验位长度为5位,按偶校验有:将5位检验位插入到有效信息位中,可得到用二进制表示的海明码为:110100110101下划线表示校验位在海明码中的上述海明码传送到接收方后,若H11(D7)位发生了错误,原码字就变为:111100110101出111100110101↓110100110101循环冗余循环冗余是通过除法运算来建立有效信息位和校验位之间的约定关系的。假设,待编码的有效信息以多项式M(X)(X)去除,所产生的余数R(X)就是检验位。有效信息和检验位相拼接就构成了CRC码。当整个CRC码被接收后,仍用约定的多项式G(X)去除,若余数为0表明该代码是正确的;若余数不为0表明某一位出错,再进一步由余数值确定出错的位置,以便进行纠正。CRCN K系系图2-2-3循环冗余的格循环冗余编码规律如下 把待编码的N位有效信息表示为多项式M(X)②把M(X)左移K位,得到M(X)×XK,这样空出了K位,以便拼装K位余数(即校验位) 选取一个K+1位的产生多项式G(X),对M(X)×XK作模2
=Q(X)+ 把左移K位以后的有效信息与余数R(X)作模2加减,拼接为CRC码,此时的CRCN+K【例2.14】选择产生多项式为1011,把4位有效信息1100编成CRC【答案】生成的CRC码 M(X)X3 这种CRC码称为(7,4)CRC
=1110+定点数的表示和运算定点数的表示定点小数的表示范围Xn-数图2-2-4若机器数为补码,当Xs=1,X1~Xn均等于0时,X为绝对值最大的负数,其真值等X绝对值最大负数=–1综上所述,设机器字长有n+1位,原码定点小数的表示范围为–(1–2-n)~(1–2-n),补码小数的表示范围为–1~(1–2-n)。若字长为8位,原码定点小数的表示范围为 128定点小数的表示范围为 127定点整数的表示范围定点整数即纯整数,小数点位置隐含固定在最低有效数位之后,如图2-2-5Xn-数图2-2-5根据前述方法在定点表示法中,参加运算的数以及运算的结果都必须保证落在该定点数所能表示的数需要说代计算机中大多只采用整数数据小数则通过浮点数表示来【例2.15】在定点机中,下列说法错误的是 【答案】A法就不正确了因为假设机器字长为8位,在整数表示时,[−1]原= ,[−1]补= [−1]反= 2.1648r1=FEH,r2=F2H,r3=90H,r4=F8H,8位寄存器中,则下列运算会发生溢出的是(。 【答案】B【分析】用补码表示时8位寄存器所能表示的整数范围为−128~+127。现在4个整数都是负数,r1−2,r2−14,r3112,r4−8r2×r3=15683个算式结果127,不发生溢出。【答案】−(219−1)~219−1,−219~219−1,0~99999,−9999~9999符号位为CH代表正号,DH代表负号,另外有4位十进制数,即从−至。定点数的运算定点数的移位运算定点数的移位运算包括算术移位、逻辑移位和循环移位。如不产生溢出,则数值×2;而右移一位时,如不考虑因移出舍去的末位尾数,则数值÷2。不同机器数算术移位后的空位添补规则如表2-2-10所示。表2-2-10真机器添补正原码、补码、反码0原0负补左移补右移补反1逻辑移位的对象是无符号数,因此移位时不必考虑符CC,构原码定点数的加/减运算原码加减运算①参加运算的操作数取其绝 若做加法,则两数直接相加,若做减法,则将减数先变一次补,再进行加法运算。③运算之后,可能有两种·有进位,结果为正,即得到正确的结果。·无进位,结果为负,则应再变一次补,才能得到正确的结果。通常,把运算之前的变补称为前变补,运算之后的变补称为后变补。补码定点数的加/减运算补码加/减运算规则要比原码加/减运算规则简单得多,所以在通用计算机中多使用/减运算两个补码表示的数相加,符号位参加运算,且两数和的补码等于两数补码之和,即:[X+Y]补=[X]补+[Y]也可以借用加法器来实现减法运算,根据补码加法公式可推出:[X–Y]补=[X+(–Y)]补=[X]补+[–Y]法是:将[Y]补连同符号位一起求反,末尾加“1”(在定点小数中这个“1”实际上是2-n)。[–Y]补被称为[Y]补的机器负数,由[Y]补求[–Y]补的过程称为对[Y]补变补(求补),[–Y]补=[[Y]补]【例2.18】已知Y=–0.0110,求[Y]原、[Y]补和[–Y]补【解答】[Y]原=1.0110,[Y]补=1.1010,[–Y]补【例2.19】已知Y=0.0110,求[Y]原、[Y]补和[–Y]补【解答】[Y]原=0.0110,[Y]补=0.0110,[–Y]补补码加减运算①参加运算的两个操作数均用补码表示②符号位作为数的一部 若做加法,则两数直接相加,若做减法,则将被减数与减数的机器负数相【例2.20】已知A=0.1011,B=–0.1110,利用补码加减运算规则,求A+B【解答】[A]补=0.1011,[B]补[A]+[B][A+B]因为[A+B]补=1.1101,所以【例2.21】已知A=0.1011,B=–0.0010,利用补码加减运算规则,求A–B【解答】[A]补=0.1011,[B]补=1.1110,[–B]补[A]+[–B][A–B]因为[A–B]补=0.1101,所以符号扩 【答案】B【分析】十进制数−1218位二进制补码表示为16位二进制补码,1111111110000111。2.23C语言程32位机器上运行。程x、yz,xzint型,yshortx127,y=9zx+y后,x、y和z的值分别是(。A. FH,y=FFF9H, 【答案】D【分析】x和z为int型,数据长32位,y为short型,数据长16位,均用补码表示。因为x=127D= B,y=−9D=−1001B,所以有x= FH,y=FFF7H。执行赋值语句z=x+y,y需要扩展符号位之后,再与x相加,z=x+y= F+FFFFFFF7H= 定点数的乘法运算来存放部分积与最后乘积的部分,它的初值为0。运算结束后寄存器C改为存放乘积的低补码一位乘法又称为Booth乘法,Booth乘则如下 乘数最低位后面增加一位附加位Yn+1,其初值为0 共需做n+1次累加,n次移位,第n+1次不移位表2-2-11Booth判断Yn操0原部分积+0,右移一0原部分积+[X]补,右移一位1原部分积+[–X]补,右移一位1原部分积+0,右移一图2-2-6Booth【例2.24】已知X=–0.1101,Y=0.1011;求X×Y【答案】X×Y= 【分析】有:[X]补=11.0011→B,[Y]补=0.1011→C,0→A,[–X]补 定点数的除法运算3个寄存器。AB寄存器分别用来存放被除数和除数,C寄存器用来存放商,它的初值为0。运算结束后A寄存器的内容为扩大了若干倍的余数。表2-2-12补码加减交替[X]补与[Y]第一次操作[ri]补与[Y]上下一次操作同[X]补–[Y]①同号(够减1[ri+1]补=2[ri]补–[Y]②异号(不够减0[ri+1]补=2[ri]补+[Y]异[X]补+[Y]①同号(不够减1[ri+1]补=2[ri]补–[Y]②异号(够减0[ri+1]补=2[ri]补+[Y]补码加减交替除法的算法流程如图2-2-7所示2-2-7关系的,不会影响最后的运算结果,因为此时真符(最左边的一位符号位)并没有发生变化。【例2.25】已知X=0.1000,Y=–0.1010;求X÷Y【答案】X0.1101+0.00102 【分析】有:[X]补=00.1000→A,[Y]补=11.0110→B,0→C,[–Y]补
1.1110
0.00102
0.00102[]补=1.0011+ ,所以=–0.1101+
补码加/减运算的溢出判设参加运算的两数为X和Y,做若X和Y异号,实际上是做两数相减,所以不会溢出。假设:作数为 [X]补操作数为 [Y]补其和(差)为 [S]补常见的溢出检测方法有3采用一个符号当Xs=Ys=0,Ss=1时,产生正溢;当Xs=Ys=1,Ss=0时,产生负溢。溢出判断条件为:溢出=采用进位位
YsSs+XsYs两数运算时,产生的进位其中,Cs为符号位产生的进位,C1为最高数值位产生的溢。故溢出条件为:溢出CsC1+CsC1采用变形补码(双符号位补码双符号位的含 结果为正数 结果正 结果负 结果为负数当两位符号位的值不一致时,表明产生溢出,溢出条件为:溢出浮点数的表示和运算理的话,很难兼顾数值范围和运算精度的要求。因此,在计算机中引入了浮点数据表示。浮点数的表示让小数点的位置根据需要而浮动,这就是浮点数。例如:浮点数的表示范围11nem阶码部分图2-2-8当es=0,ms=0,阶码和尾数的数值位各位全为1(即阶码和尾数都为最大正数)时,该点数为最大正数:
=(1–2-n)22k最小正数)时,该浮点数为最小正数:X最小正数=2-n22k2k当es=0,阶码的数值位为全1;ms=1,尾数的数值位为全0(即阶码为最2k绝对值最大的负数)时,该浮点数为绝对值最大负数:规格化浮点数
一个浮点数的表示形式并不是唯一的。例如:二进制数0. 规格化浮点数的尾数M的绝对值应在下列范围内:r
≤|M|<1如果r=2,则有 ≤|M|<1。在尾数用原码表示时,规格化浮点数的尾数的最高数位总2于1。在尾数用补码表示时,规格化浮点数应满足尾数最高数位与符号位不同(s⊕1=1),即当1≤M<1时,应有01xx…x形式;当–1≤M<–1时,应有10xx…x形式。 当M=– 时,对于原码来说,这是一个规格化数,而对于补码来说,这不是一个规格2 =2 =2
表2-2-13浮点数真阶尾最大k(1–2-n)22绝对值k–122最小k2-n规格化的最小正数k2-1绝对值k–2-n规格化的绝对k–(2-1+2-n)当运算结果大于最大正数称为正上溢,小于绝对值最大负数时称为负上溢,正上溢和负上溢统一称为上溢,数据一旦产生上溢,计算机必须中止运算操作,进行溢出处理。当运算结果在0至规格化最小正数之间称为正下溢,在0至规格化的绝对值最小负数之间称为负下溢,正下溢和负下溢统一称为下溢,数据一旦出现下溢,计算机一般不做任何处理,仅仅置成机器零即可。浮点数阶码的移码表示法[X]移=偏置值对于字长为n+1位的定点整数,通常偏置值为2n+1【例2.26】已知,求[X]移==【例2.27】已知,求[X]移 表2-2-14偏置值为27真值X(十进制真值X(二进制[X][X]––┇┇┇┇–01┇┇┇┇从表2-2-14中,可以看出这种移码具有以 真值0在移码中的表示形式也是唯一的,即[+0]移=[–0]移 ⑤同一数值的移码和补码除最相反外,其他各位相同。·便于比较浮点数的大小。阶码大的,其对应的真值就大,阶码小的,对应的真值就小。·简化机器中的判零电路。当阶码全为0,尾数也全为0时,表示机器零。2.28】某浮点数字16位,其中阶6位(含一位阶符,移码表2为底;尾数部分10位(含一位数符,位于尾数的最,补码表示,规格化。分别写出下列最大正数。【答案 ,2−12−25=2−33 )=( ,−(2−1+2−9)2−252−1+2−9)2−32 ,−1225−1231IEEE754浮点数采用IEEE754标准,它与前面介绍的浮点数格式有一些差别。mE按 754标准,常用的浮点数的格式如图mE数符阶码部分,用移码表示 图2-2-9IEEE754 754标准中有3种形式的浮点数,它们具体格式见表2-2-15表2-2-15IEEE754标准中的3类数阶尾数总位偏置十六进十进短浮18长浮1临时浮点数1用原码表示。例如,(12)10=(1100)2,将它规格化后结果为1.1×23,其中整数部分的“1”将阶码是以移码形式的。对于短浮点数,偏置值为127(7FH);长浮点数,偏移量为1023(3FFH)。浮点数阶码部分之前,偏置值要先加到阶码真值上。上述例子中,阶码(402H)【例2.29】将(100.25)10转换成短浮点数【答案】短浮点数格式为42C88000H【分析】 把十进制数转换成为二进制数,有 ②转化成规格化二进制数, 计算出阶码的移码(偏置值+阶码真值 表示为十六进制的代码=42C88000H【例2.30】把短浮点数C1C90000H转换成为十【答案】十进制数为–25.125 所以有,符号位=1,阶码 ,尾数 ②计算出阶码真值(移码减去偏置值 ③以规格化二进制数形式写出此数 ④写成非规格化二进制数形式⑤转换成十进制数,并加上符号位,所以,该浮点数=通常,将 754短浮点数规格化的数值v表示v=(–1)S×(1.f)×2E-浮点数的加/减运算设两个非0的规格化浮点数分浮点数的加减运算步骤
A=MA×B=MB×执行浮点数的加减运算,需要经过对阶、尾数加/减、尾数结果规格化对决于阶码的大小,因此,对齐两数的小数点,就是使两数的阶码相等,这个过程称为对阶。要对阶,首先应求出两数阶码EA和EB之差若 =0,表示EA=EB;若ΔE>0,表示EA>EB;若ΔE<0,表示EA<EBEA=EB,无需对阶。尾数加/对阶之后,就可以进行尾数加/减其算法与前面介绍的定点加/212设尾数符号位补码表示,经过加/减运算之后,可能出现以下6种情况,即①00.1xx…②11.0xx…③00.0xx…④11.1xx…⑤01.xxx…⑥10.xxx…第①和②种情况,符合规格化数的定义,已是规格化数。左规Cs1Cs2C1+Cs1Cs2右规右规最多只有舍0舍1入,相当于十进制中的四舍五入。用将要舍去的q位溢出判浮点数的溢出情况由阶码的符号决定,若阶码也符号位补码表示,当[EC]补=01,xxxx,表示上溢。此时,浮点数真正溢出,机器需停止运算,做溢出中断[EC]补=10,xxx…x,表示下溢。机器不做溢出处理,而是按机器零处理。A=0.101110×2-B=–(0.101011)×2-尾数和阶码均为二进制表示,假设这两数的格式为:阶码4位,用移码(偏置值为23)表示;尾数8位,用补码表示,包含一位符号位,即 首先对阶,求阶差:ΔEEA–EBΔE=1,表示EA>EB。按对阶规则,将MB右移一位,EB+1→EB,得浮浮接下来尾数求和: 由于结果的尾数是非规格化的数,故应左规。尾数左移一位,阶码减1。最后[A+B]浮 未发生57位(2位符号位。若有两个数X=27×29/32,Y=25×5/8,则用浮点加法计X+Y的最终结果是(。 D.发生溢出【答案】D【分析】浮点数加、减运算一般包括对阶、尾数运算、规格化、舍入和判溢出等步骤。第一步,对阶:第一个数X=27×2932,浮点数格式为001 ,第二个数Y=25×5/8,浮点数格式00101 。对阶原则是小阶向大阶看齐,MY右移两位,EY+2,浮点数格式为001 MZ=MX+MY= 浮数格为0011 。第三步,结果规格化:尾数需要进行一次右规,才能变成规格化数,MZ右移一位,EZ+1点数格式为01000 。第四步,判溢出:由于阶码符号位不同,所以发生溢出。不是最终结果,B选项少了第三和第四步,C选项少了第四步。2.32i,f,dint,floatdouble(int用补码表示,floatdouble分别用IEEE754单精度和双精度浮点数据表示i=785,f=1.5678e3,d=1.5e10032位机器中执行下列关系表达式,则结果为真是(。 (Ⅳ)(d+f)-A.仅Ⅰ和 B.仅Ⅰ和 C.仅Ⅱ和 D.仅Ⅲ和【答案】B【分析】ffloatint时,小数部分会丢失,故Ⅱ的结果不为真;d+f时需要对阶f的尾数有效位被舍去0,故d+f仍然为d,再减d后结0,算术逻辑单元串行加法器和并行加法器串行加法器并行加法器并行加法器的进位产生和传递Ci=AiBi+(Ai⊕Bi)Ci-Ci=Gi+PiCi- … Cn- … An 图2-2-10其中┇-串行进位的并行加法器的总延迟时间与字长成正比,字长越长,总延迟时间就越长。并行加法器的快速进位并行进位又叫先行进位、同时进位,其特点是各级进位信号同┇4位4位4位 4位4位4位 4位4位
图2-2-11161 1其中 432P* 432G*称为组进位产生函数,P*称为组进位传递函数,这两个辅助函数只与P、G有关。 *432 +P*P*P*432为了要产生组进位函数,需要对原来的CLA电路稍加修改,这种电路称为成组先行进位电路(BCLA)。利用这种4位的BCLA电路以及进位产生与传递电路和求和电路可以构成4位BCLA加法器。164BCLA1CLA电路组成,如2-2-12所示。G PG PCLA电1.G P G P 5 G2211 图2-2-1216【 2.33】在串行进位的并行加法器中,影响加法器运算速度的关键因素是 A.门电路的级延 B.元器件速C.进位传递延 D.各位加法器速度的不【答案】C【分析】加法器是整个运算器的,提高加法器的运算速度最直接的方法就是多位并4个选项均会对加法器的速度产生影响,但只有进位传递延迟对并行加法器算术逻辑单元ALU的功能和结构乘、除运算,最终都能归结为加法运算。因此,ALU的首先应当是一个并行加法器,同能执行种算术运算和种逻辑-2-给出了以负逻辑为例的/逻辑运算负逻工作选表负逻工作选逻辑运算术运算Cn=0(无进位算术运算Cn=1(有进位F=F=AF=F=ABF=ABF=AF=F=A加(AB)F=F=AB加(AB)F=AF=ABF=AF=A+F=A+F=(A+B)加F=AF=A加F=A加(A+B)F=F=AF=ABF=AB加F=AB加(A+B)F=(A+B)加F=AF=AAF=AF=ABF=ABAF=ABF=ABAF=A*:A加A=2A,算术左第三章器层次结系统是由几个容量、速度和价格各不相同的器构成的层次结构系统。本章讨论系统的分类和层次结构,半导体随机器和只读器的工作原理和组成方式,以及运用半导体组成主器的一般原则和方法,还介绍了双口RAM、多模块器、(一)器的分按器的作用分类;按存取方式分类;按介质分类;按信息的可保存性分类(三)半导体随机存 器的工作原理DRAM器的工作原集中式、分散式和异步式3种刷新方式。(四)只读MROM、PROM、EPROMFlash(五)主器与CPU的连主器的扩展;的地址分配和片选;主存和 之间的硬连接和软连接(六)双口RAM和多模块双端 RAM;交叉编址和低位交叉编址的多模块器(七)高速缓冲器程序的局部性原CacheCacheCache(八)虚拟虚拟器的基本概页式虚拟段式虚拟段页式虚拟TLB(快表3.1器的分按器在计算机系统中的作用分如果将器按照其在计算机系统中起到的作用来分类,可以分为高速缓冲主主存用来存放计算机运行期间所需要的程序和数据,CPU可直接随机地进行读/写。主存具有一定容量,存取速度较高。由于CPU要频繁地主存,所以主存的性能在很大程辅助辅助器又称外器,它用来存放当前暂不参与运行的程序和数据以及一些需要永久性保存的信息。辅存设在主机外部,容量极大且成本很低,但存取速度较低,而且CPU不按存取方式分类如果将器按照其存取方式来分类,可以分为随机存取器只读器ROM的特点是:器的内容只能随机读出而不能写入。由于信息一旦写入器就固定不变了,即使断电,写入的内容也不会丢失,所以又称为固定器。ROM除了存放某些顺序存取器直接存取器(如磁盘上的磁道;第二步在小区域内顺序检索或等待,直至找到目的地后再进行读/写操作。这种器的存取时间也是与信息所在的物理位置有关的,但比SAM的存取时间要短。磁盘机就属于这类器。按介质分如果将器按照其介质来分类,可以分为磁芯磁芯器的特点是信息可以长期,不会因断电而丢失,但磁芯器的读出是破坏性读出,即不论磁芯原存的内容为“0”还是“1”,读出之后磁芯的内容一律变为“0”。磁芯器容量小、速度慢、体积大、可靠性低,从20世纪70年始,已被半导体器逐渐取代。半导体采用半导体器件制造的器,主要有MOS型器和双极型(TTL电路或ECL电路)器两大类。MOS型器具有集成度高、功耗低、价格便宜、存取速度较慢等特点;双极型器具有存取速度快、集成度较低、功耗较大、成本较高等特点。半导体RAM的磁表面光按信息的可保存性分类断电后,信息即的器,称易失性器,例如,半导体RAM。断电后信 如果某个单元所的信息被读出时,原存信息将被破坏,则称破坏性读出;如果读出时,被读单元原存信息不被破坏,则称非破坏性读出。具有破坏性读出性能的器,3.2器的层次化结层…多级层次如图2-3-1所示。从CPU的角度来看,n种不同的器(M1~Mn)在逻辑层…图2-3-1多级层 分别为SM、TA1、C1和SM、TA2、C2。 层次的平C1SM MM MM 当SM1SM2时,C≈C2H定义为CPU产生的逻辑地址能在M1中到的概率。在一个程序执行期间,设N1为M1中次数,N2为M2的次数。 N1N2【例3.1】假设某计算机的系统由Cache和主存组成。某程序执行过程中访存次,其中Cache缺失(未命中)50次,则Cache中率是 【答案】D【分析】 中率H= ,程序访存次数(包括 Cache的次数和访存N1N存的次数N1+N2=100次,其中Cache的次数N1为访存次数减去失效次(1000−50=950。H100050=0.95=95%。不或失效率是指由CPU产生的逻辑地址在M1中不到的概率。对于两级1−H。两级层次的等效时间TA根据主存的启动时间有假设Cache和主存是同时启动的假设Cache不命中时才启动主存,TA=H×TA1+(1−H)×(TA1+TA2)=层次 效率e=Cache中率等效时间Cache-主存系统的效率e【答(1)H=0.96,(2)TA=46.4ns,(3)e=86.2%【分析】解 5000
(2)TA=TA1+(1−H)(3)e=TA1
40主主辅辅助软硬主主辅辅助软硬 图2-3-2两 层由于 系统全部用硬件来调度,因此它对系统程序员和应用程序员都是透明的半导体随机存取半导体随机器RAM又可分为静态RAM(SRAM)和动态RAM(DRAM)两种 器的工作原 器的工作原DRAMDRAM集成度高,功耗小,但存取速度慢,一般用来组成大容量主存系统。DRAM的刷新间隔一般选定的最大刷新间隔为2ms或4ms甚至更大写。而刷新是定时的,即使许多单元长期未被,若不及时补充电荷的话,信息也会DRAM的刷新方式常见的刷新方式有集中式、分散式和异步式3刷新时间=矩阵行数×刷新周例如,对具有1024个单元(排列成32×32的矩阵)的进行刷新,刷新是按行进行的,且每刷新一行占用一个存取周期,所以共需32个周期以完成全部单元的01… …01… …3968个周期(198432个周期(16刷新间隔(2图2-3-3这种刷新方式增加了系统的存取周期,如的存取周期为0.5s,则系统的存取周期应为1s。仍以前述的32×32矩阵为例,整个刷新一遍需要32s,如图2-3-4所示。读//写刷…读/图2-3-4相邻两行的刷新间隔=最大刷新间隔时间÷行对于32×32矩阵,在2ms内需要将32行刷新一遍,所以相邻两行的刷新时间间隔32=62.5s,即每隔62.5s安排一个刷新周期。在刷新时读写,如图2-3-5所示读读/ 刷62 0.5读/62.5刷…读/ 刷62.5 图2-3-5DRAM的刷新要注意以 ④因为所有同时被刷新所以在考虑刷新问题时应当从单个的容量着手,【例3.3】动态RAM的刷新单位是 A.单 B. C. D.【答案】B只读掩模式一次可编程PROM产品出厂时,所有单元均制成“0”(或“1”),用户根据需要可自行将其中某些单元改为“1”(或“0”)。PROM写入是不可逆的,所以只能进行写入。可擦除可编程UVEPROM需用紫外线灯制作的擦抹器照射器上的透明窗口,使中原存内闪速器EEPROM和RAM的优点。【例3.4】下述说法正确的是 A.EPROM是可改写的,因而也是随机器的一种B.EPROM是可改写的,但它不能作为随机器用C.EPROM只能改写一次,故不能作为随机器用D.EPROM是只能改写一次的只读器【答案】B【例3.5】下列有关RAM和ROM的叙述中,正确的是 RAM是易失性器,ROM是非易失性RAM和ROM都采用随机存取方式进行信息A.仅Ⅰ和 B.仅Ⅱ和 C.仅 D.仅【答案】A【分析】随机存取方式是指CPU对任何一个单元的存取时间相同,区别在于可读可写,ROM只读不写。ROM显然不可用作Cache,也不需主器与CPU的连主器的基本结主存通常由体、地址译码驱动电路、I/O和读写电路组成,其框图如图2-3-6所示
体体图2-3-6主器的单 体例如,IBM370机是字长为32位的计算机,主存按字节编址,每一个字包含4个单独编址的字节,其地址安排如图2-3-7(a)所示。它被称为大端方案,即字地址等于最高有效编址的字节,其地址安排如图2-3-7(b)所示。它被称为小端方案,即字地址等于最低有效字 字节地址01012345678948
址 字节地址1010325424 图2-3-7 【答案】B【分析】此存放方式是小端次序方案,将最低有效字节在最小地址位置主存容量的扩展总片数=容量/例如:器容量为8K×8,若选用1K×4 ,则需要1K3.7】某计64KB,其ROM4KB,其余RAM区,按字节编址。现要用2K×8位的ROM和4K×4位的RAM来设计该器,则需要上述规格的ROM数和RAM数分别是(。1、 B.2、 C.1、 D.2、【答案】D ,需要4K8=2片,采用字扩2K方式;60KB的RAM区,选用4K×4位的 ,需要60K8=30片,采用字和位同4K系系扩展方式。位扩展是指只在位数方向扩展(加大字长),而的字数和器的字数是一致的。位扩展的连接方式是将各的地址线、片选线和读写线相应地并联起来,而将各【例3.8】用64K×1的SRAM设计一个64K×8的器【解答】所需64K8=864K仅有16根地址线、1根数据线。具体的连接方法是:8个的地址线A15~A0分别连在一起,各的片选信号CS以及读写控制信号WE也都分别连到一起,只有数据线D7~D0各自…址…址A线A……
A1..231..23.4567 .等效组图2-3-8【例3.9】用16K×8的SRAM设计一个64K×8的器【解答】所 数为:64K8=416K在这种情况下,CPU将提供16根地址线、8根数据线与器相连;而仅有14根地址线、8根数据线。4个的地址线A13~A0、数据线D7~D0及读写控制信号E都是同名信号并联在一起;CPU的地址线A15、A14经过一个地址译产生4个片选信号CSi,图2-3-9A15A14=00,选中第一片,A15A14=01,选中第二片在同一时间内4个中只能有一个被选中。4个的地址分配如下第一最低地000000000000最高地001111111111第二最低地010000000000第三最高地最低地011111111111100000000000最高地101111111111第最低地110000000000最高地111111111111图2-3-10表示用8片16K×4的SRAM组成64K×8器的连接图
16K×416K×4
16K×4。16K×4。器 译器
16K×4
4
码
。16K×4。.
。。16K×4。。的地址分配和片
图2-3-10假设4片2K×8用线选法构成的8K×8器,各的地址范围如表2-3-1所示表2-3-1地址范围(空间111┇110┇101┇011┇线选法的优点是不需要地址译,线路简单,选择无须外加逻辑电路,但仅适用全译码表2-3-2地址范围(空间0┇0┇1┇1┇部分译所谓部分译码即用除片内寻址外的地址的一部分来译码产生片选信号。如用4片A12=A11=0,则选中第一片;只要A12=0,A11=1,则选中第二片……。也就是说,8KRAM中的任一个单元,都对应有2(20-13)=27个地址,这种一个单元出现多个地址的现象称地。 【答案】A共有8个(分为4组)组成16KB的器,由高2位地址线A2A3作为译的输入【例3.11】假定用若干个2K×4位组成一个8K×8位器,则地址0B1FH所在芯 【答案】D组【分析】用8片2K×4位的组成一个8K×8位器,采用字和位同时扩展。每组中所需2个 000H07H00~0第三组,1000H~17FFH;第四组,1800H~1FFFH,所以地址0B1FH所在的最小地址为组3.12】某CPU可输出数据线8条(D7~D0)地址线20条(A19~A0,控制线1条(WE。目前使用的空间为48KB,其中:16KB为ROM,拟用8K×8位的ROM芯片;32KBRAM16K4RAM。需要两 各多少片系系画出CPU 器之间的连线图( 自定【答案(1)ROM2片,RAM4片CPU与器之间的连线图如图2-3-11所示图2-3-11例3.10中CPU与器的连接ROM的地址范围是:ROM1为00000H~01FFFH,ROM2为02000H~03FFFH的地址范围是:RAM1+RAM204000H~07FFFH,RAM3+RAM408000H~0BFFFH【分析 8K 16K图中要特别注意地址线、数据线和控制线的连接。地址线都是单向的;RAM的数据线是双向的,ROM的数据线是单向的;WE(写允许)线只连接至RAM,不连接至ROM;还片选信号采用全译码方式,主存地址分配如表2-3-3表2-3-3主器地址分所选片片内地0000000000000001010…1…Y0=0000001000…Y1=0000001111…0000010000…Y20+0000011111…Y3=0000100000…Y40+0000101111…Y5= 器和CPU的连系系主存和CPU之间的连接包括硬连接和软连接。其中硬连接既包含前面提到的之地址总数据总n主存容通常,由若干构成的器可以看作一个黑盒子通过地址总(AB)、地址总数据总n主存容图2-3-12主存和CPU①地址 CPU将地址信号送至地址总线② CPU发读命③Waitfor 等待器工作完成信号 读出信息经数据总线送至CPU写操作是指将要写入的信息存入CPU所指定的单元中,其操作过程是①地址 CPU将地址信号送至地址总线②数据 CPU将要写入的数据送至数据总线 CPU发写命④Waitfor 等待器工作完成信号双口RAM和多模块目前,主存的存取速度已成为计算机系统的瓶颈,除去通过寻找高速元件来提高速度外,也可以采口RAM和多模块器,使在一个存取周期内可以并行地读写多个字,双口双口RAM是指同一个器具有两组相互独立的读写控制电路是一种高速工作的器。它有两个独立的端口,分别具有各自的地址线、数据线和控制线,可以对器中任何系系双口RAM的 误。两个端口对同一内存操作有4种情况: 两个端口不同时对同一地址单元存取数据; 两个端口同时对同一地址单元读出数 两个端口同时对同一地址单元写入数 两个端口同时同一地址单元,一个写入数据,另一个读出数据。功能输出,当对应端口的BUSY=L,数据的存取。 C.左端口与右端口的数据码相同 【答案】B多模块交叉编址的多模块器用地址码的区分模块,地址码的低位选择单元。低交叉编址多模块用地址码低位区分模,地址码选择单元。低位交叉编址的4个模块器的编址序列如表2-3-4所示,将它称之为模4交叉编址序列表2-3-4模4地址编对应二进制地续的。这种编址方式又称为横向编址。这种器采用分时启动的方法,可以在不改变每个高速缓冲系系程序的局部性原单元被,则可能该单元会很快被再次。空间局部性是指如果一个单元被访Cache的基本工作原理2-3-13Cache的基本结构。Cache和主存都被分成若干个大小相等的块,每块由若干字节组成。由于Cache的容量远小于主存的容量,所以Cache中的块数要远少于主存中的块数。当CPU发出主存地址后,首先判断该字是否在Cache中,若命中,则直接Cache;若不命中,则主存并将该字所在的主存块装入Cache。 ..
.访标Cache地
去图2-3-13Cache 不按写分配法,即只把所要写的信息写入主存。 按写分配法,即在把所要写的信息写入主存后还把这个块从主存中读入Cache 和主存之间的映射方式全相联映射图2-3-14(a)所示。全相联映射方式比较灵活,Cache的块概率最低、空间利用率最高,但直接映射主存的第1块、第9块,只能映射到Cache的第1块……。直接映射的关K=Imod式中:K为Cache的块号;I为主存的块号;2c为Cache组相联映射组相联映射规则如图2-3-14(c)所示。Cache分为4组,每组2块。主存的第9块将可Cache第1组的位置上。组相联映射的关系可J=Imod式中:J为Cache的组号;I为主存的块号;Q为Cache的组数 012 01234567
0123456789图2-3-1433.14Cache162路组相联映射方式(2块。每个主存块大小为32字节,按字节编址。主存129号单元所在主存块应装入到的Cache组号是 【答案】C【分析】由于每个主存块大小为32字节,按字节编址。根据计算主存块号的公式,主存块号=主存地址/块大小=129=4所以129号单元所在的主4块。若共有16块,采用2路组相联映射方式,可分为8组。根据组相联映射的映射关系,主存第Cache4 中主存块的替换算法随机算法先进先出(FIFO)算近期最少使用(LRU)算法Cache写策略(“脏”位),当一块中的任何一个单元被修改时,标志位被置“1”。在需要替换掉这一块时,如果标志位为“1”,则必须先把这一块写回到主存中去之后,才能再调入新的块;如果标志位为“0写直达法和写回法都是对应于Cache写命中时的情况。如果Cache写不命中时,还涉及到是否需要调块的问题。“不按写分配”法只写主存,不进行调块。“按写分配”法则除了要写入主存外,还要将该块从主存调入Cache【例3.15】某计算机的主存地址位数为32位,按字节编址。假定数据Cache中最多存128个主存块,采用4路组相联方式,块大小为64Byte,每块设置了1性写回策略,为此每块设置了1位“脏”位。要求:计算该数据Cache的总位数(1),21位;组号字段居中,5位;块内地址字段在后,6(2)68480(1)64B6Cache128个主=32剩余位,32−5−6=21位。(2)数据Cache的总位数应包括标记项的总位数和数据块的位数。每个Cache块对应一个标记项,标记项中应包括标记字段、有效位和脏位(仅适用于写回法。故标记项的总位数=128×(21+1+1128232944位。数据块位数12864865536位,所以数据的总位数=29446553668480【例3.16】某计算机的主存地址空间大小为256MB按字节编址,指令CacheCache8CacheCache64BCache采用直接映射方式,现有两个功能相同的程序A和B,其伪代码如下所示:int32i,j,suma若不考虑用于Cache一致性和替换算法的控制位,则数据Cache的总容量为少数组数据a[0][31]a[1][1]各自所在的主存块对应的Cache行号分别是多少AB的数据【答(1)512B(2)6,5(3)93.75%,0,程序A的执行过程更短。Cache8Cache行,每个Cache行大小64BCache一致性和替换算法的控制位,则数据Cache的总容量为8×64B=512B。Cache容量为512B,Cache地址9位,有8Cache行,块号3位,块的大64B6256MB,按字节编址,256MB=228B28位,1936Cache2-3-15。标标块块内地主存
9 6 块内地块块内地块
6 图2-3-15主存和Cache数组按行优先方式存放,首地址320,数组元素占4个字节。数据Cache采用直接映射方式a[0][31]的地址为320+31×4=444= B,主存块110对应的Cache行号为110B=6;a[1][1]的地址为320+(256+1)×4=1348=10101000100B,主存块10101对应的Cache行号为a256×256×4B=218B218/64=212个主存块,按行优先存放,程序A逐行数组a,共需要访存的次数为216次,未命中次数212,于是程序A的程序B逐列数组a,由于数组a一行的数据量为1KB>64B,所以第0列每个元素均不命中。由于数组有256列,数据Cache仅有8行,故数组后续列元素时仍然不命中,于是程序B的数据为0%。由于从Cache读数据比从主存读数据快得多,所以程序A的执行过虚拟虚拟器由主器和联机工作的辅助器(通常为磁盘器)共同组成,这两个器在硬件和系统软件的共同管理下工作,对于应用程序员,可以把它们看作是一个单虚拟器的基本概虚拟器将主存或辅存的地址空间统一编址,形成一个庞大的空间。在这个大空程序运行时,CPU以虚地址来主存,由辅助硬件找出虚地址和实地址之间的对应关系,并判断这个虚地址指示的单元内容是否已装入主存。如果已在主存中,则通过地址变换,CPU可直接主存的实际单元;如果不在主存中,则把包含这个字的一页或一个程页式虚拟以页为基本单位的虚拟器叫页式虚拟器各类计算机页面大小不等一般为512B 页页1页内地页内地…页内地…图2-3-16页式虚拟器的每页长度是固定的,页表的建立很方便,新页的调入也容易实现。但段式虚拟系系段页式虚拟TLB(快表在虚拟器中,如果不采取有效的措施,主存的速度将要降低几倍,这是因为在要想使虚存的速度接近于主存的速度,必须加快查表的速度。由于程序在执行过程中具有局部性的特点,因此,对页表的并不完全是随机的。在一段时间内,对页表的访问只是局限在少数几个器字内。为了将页表的时间降低到最低限度,许多计算机将页表分为快表和慢表两种。将当前最常用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司综合管理部工作总结及2025年工作计划
- 公司部门人员工作计划范文书
- 2025幼儿园学期工作计划表
- 一:主席团工作计划
- 2025年秋季幼儿园小班工作计划
- 人事年度工作计划范文
- 学校班集体工作计划报告写作
- 幼儿园春季学期大班工作计划
- 《多变的价格》课件
- 《型数控系统简介》课件
- 2025年1月“八省联考”考前猜想卷化学试题(15 4) 含解析
- 肿瘤晚期常见症状护理
- 高性能SVG渲染算法
- 2024年公务员考试时事政治考试题(综合题)
- 2024-2030年中国呼叫中心行业发展展望及投资管理模式分析报告权威版
- 2025届浙江省高二物理第一学期期末学业水平测试试题含解析
- 综合布线技术设计题单选题100道及答案
- 2024年安全员A证证考试题库及答案(1000题)
- 轴线翻身课件讲稿
- 【企业盈利能力探析的国内外文献综述2400字】
- 2024年事业单位公开选调工作人员报名及资格审查表
评论
0/150
提交评论