计算机组成原理同名1467Word格式文档下载.docx
《计算机组成原理同名1467Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《计算机组成原理同名1467Word格式文档下载.docx(21页珍藏版)》请在冰点文库上搜索。
吞吐量:
指流入、处理和流出系统的信息速率。
它主要取决于主存的存取周期。
响应时间:
计算机系统对特定事件的响应时间,如实时响应外部中断的时间等。
7.解释下列概念:
主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。
P9-10
主机:
是计算机硬件的主体部分,由CPU和主存储器MM合成为主机。
CPU:
中央处理器,是计算机硬件的核心部件,由运算器和控制器组成;
(早期的运算器和控制器不在同一芯片上,现在的CPU内除含有运算器和控制器外还集成了CACHE)。
主存:
计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;
由存储体、各种逻辑部件及控制电路组成。
存储单元:
可存放一个机器字并具有特定存储地址的存储单位。
存储元件:
存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。
存储字:
一个存储单元所存二进制代码的逻辑单位。
存储字长:
一个存储单元所存储的二进制代码的总位数。
存储器中可存二进制代码的总量;
(通常主、辅存容量分开描述)。
机器字长:
指CPU一次能处理的二进制数据的位数,通常与CPU的寄存器位数有关。
指令字长:
机器指令中二进制代码的总位数。
第3章系统总线
1.什么是总线?
总线传输有何特点?
为了减轻总线负载,总线上的部件应具备什么特点?
P41.总线是一种能由多个部件分时共享的公共信息传送线路。
总线传输的特点是:
某一时刻只允许有一个部件向总线发送信息,但多个部件可以同时从总线上接收相同的信息。
为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线连通
5.解释下列概念:
总线宽度、总线带宽、总线复用、总线的主设备(或主模块)、总线的从设备(或从模块)、总线的传输周期和总线的通信控制。
P46。
总线宽度:
通常指数据总线的根数;
总线带宽:
总线的数据传输率,指单位时间内总线上传输数据的位数;
总线复用:
指同一条信号线可以分时传输不同的信号。
总线的主设备(主模块):
指一次总线传输期间,拥有总线控制权的设备(模块);
总线的从设备(从模块):
指一次总线传输期间,配合主设备完成数据传输的设备(模块),它只能被动接受主设备发来的命令;
总线的传输周期:
指总线完成一次完整而可靠的传输所需时间;
总线的通信控制:
指总线传送过程中双方的时间配合方式。
10.为什么要设置总线标准?
你知道目前流行的总线标准有哪些?
什么叫plugandplay?
哪些总线有这一特点?
总线标准的设置主要解决不同厂家各类模块化产品的兼容问题;
目前流行的总线标准有:
ISA、EISA、PCI等;
plugandplay:
即插即用,EISA、PCI等具有此功能
第4章存储器
3.存储器的层次结构主要体现在什么地方?
为什么要分这些层次?
计算机如何管理这些层次?
存储器的层次结构主要体现在Cache-主存和主存-辅存这两个存储层次上。
Cache-主存层次在存储系统中主要对CPU访存起加速作用,即从整体运行的效果分析,CPU访存速度加快,接近于Cache的速度,而寻址空间和位价却接近于主存。
主存-辅存层次在存储系统中主要起扩容作用,即从程序员的角度看,他所使用的存储器其容量和位价接近于辅存,而速度接近于主存。
综合上述两个存储层次的作用,从整个存储系统来看,就达到了速度快、容量大、位价低的优化效果。
主存与CACHE之间的信息调度功能全部由硬件自动完成。
而主存与辅存层次的调度目前广泛采用虚拟存储技术实现,即将主存与辅存的一部分通过软硬结合的技术组成虚拟存储器,程序员可使用这个比主存实际空间(物理地址空间)大得多的虚拟地址空间(逻辑地址空间)编程,当程序运行时,再由软、硬件自动配合完成虚拟地址空间与主存实际物理空间的转换。
因此,这两个层次上的调度或转换操作对于程序员来说都是透明的。
4.说明存取周期和存取时间的区别。
存取周期和存取时间的主要区别是:
存取时间仅为完成一次操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。
即:
存取周期=存取时间+恢复时间
5.什么是存储器的带宽?
若存储器的数据总线宽度为32位,存取周期为200ns,则存储器的带宽是多少?
存储器的带宽指单位时间内从存储器进出信息的最大数量。
存储器带宽=1/200ns×
32位=160M位/秒=20MB/秒=5M字/秒
注意:
字长32位,不是16位。
(注:
1ns=10-9s)
6.某机字长为32位,其存储容量是64KB,按字编址它的寻址范围是多少?
若主存以字节编址,试画出主存字地址和字节地址的分配情况。
存储容量是64KB时,按字节编址的寻址范围就是64K,
如按字编址,其寻址范围为:
64K/(32/8)=16K
主存字地址和字节地址的分配情况:
如图
7.一个容量为16K×
32位的存储器,其地址线和数据线的总和是多少?
当选用下列不同规格的存储芯片时,各需要多少片?
1K×
4位,2K×
8位,4K×
4位,16K×
1位,4K×
8位,8K×
8位
地址线和数据线的总和=14+32=46根;
选择不同的芯片时,各需要的片数为:
4:
(16K×
32)/(1K×
4)=16×
8=128片
2K×
8:
32)/(2K×
8)=8×
4=32片
4K×
32)/(4K×
4)=4×
8=32片
16K×
1:
32)/(16K×
1)=1×
32=32片
32)/(4K×
8)=4×
4=16片
8K×
32)/(8K×
8)=2×
4=8片
8.试比较静态RAM和动态RAM。
略。
(参看课件)
11.一个8K×
8位的动态RAM芯片,其内部结构排列成256×
256形式,存取周期为0.1μs。
试问采用集中刷新、分散刷新和异步刷新三种方式的刷新间隔各为多少?
采用分散刷新方式刷新间隔为:
2ms,其中刷新死时间为:
256×
0.1μs=25.6μs
采用分散刷新方式刷新间隔为:
(0.1μs+×
0.1μs)=51.2μs
采用异步刷新方式刷新间隔为:
2ms
14.某8位微型机地址码为18位,若使用4K×
4位的RAM芯片组成模块板结构的存储器,试问:
(1)该机所允许的最大主存空间是多少?
(2)若每个模块板为32K×
8位,共需几个模块板?
(3)每个模块板内共有几片RAM芯片?
(4)共有多少片RAM?
(5)CPU如何选择各模块板?
(1)该机所允许的最大主存空间是:
218×
8位=256K×
8位=256KB
(2)模块板总数=256K×
8/32K×
8=8块
(3)板内片数=32K×
8位/4K×
4位=8×
2=16片
(4)总片数=16片×
(5)CPU通过最高3位地址译码输出选择模板,次高3位地址译码输出选择芯片。
地址格式分配如下:
18.已知收到的汉明码(按配偶原则配置)为1100100、1100111、1100000、1100001,检查上述代码是否出错?
第几位出错?
假设接收到的汉明码为:
c1’c2’b4’c3’b3’b2’b1’
纠错过程如下:
P1=c1’⊕b4’⊕b3’⊕b1’
P2=c2’⊕b4’⊕b2’⊕b1’
P3=c3’⊕b3’⊕b2’⊕b1’
如果收到的汉明码为1100100,则p3p2p1=011,说明代码有错,第3位(b4’)出错,有效信息为:
1100
如果收到的汉明码为1100111,则p3p2p1=111,说明代码有错,第7位(b1’)出错,有效信息为:
0110
如果收到的汉明码为1100000,则p3p2p1=110,说明代码有错,第6位(b2’)出错,有效信息为:
0010
如果收到的汉明码为1100001,则p3p2p1=001,说明代码有错,第1位(c1’)出错,有效信息为:
0001
19.已经接收到下列汉明码,分别写出它们所对应的欲传送代码。
(1)1100000(按偶性配置)
(2)1100010(按偶性配置)
(3)1101001(按偶性配置)
(4)0011001(按奇性配置)
(5)1000000(按奇性配置)
(6)1110001(按奇性配置)
(一)假设接收到的汉明码为C1’C2’B4’C3’B3’B2’B1’,按偶性配置则:
P1=C1’⊕B4’⊕B3’⊕B1’
P2=C2’⊕B4’⊕B2’⊕B1’
P3=C3’⊕B3’⊕B1’
(1)如接收到的汉明码为1100000,
P1=1⊕0⊕0⊕0=1
P2=1⊕0⊕0⊕0=1
P3=0⊕0⊕0=0
P3P2P1=011,第3位出错,可纠正为1110000,故欲传送的信息为1000。
(2)如接收到的汉明码为1100010,
P2=1⊕0⊕1⊕0=0
P3P2P1=001,第1位出错,可纠正为0100010,故欲传送的信息为0010。
(3)如接收到的汉明码为1101001,
P1=1⊕0⊕0⊕1=0
P2=1⊕0⊕0⊕1=0
P3=1⊕0⊕1=0
P3P2P1=000,传送无错,故欲传送的信息为0001。
(二)假设接收到的汉明码为C1’C2’B4’C3’B3’B2’B1’,按奇性配置则:
P1=C1’⊕B4’⊕B3’⊕B1’⊕1
P2=C2’⊕B4’⊕B2’⊕B1’⊕1
P3=C3’⊕B3’⊕B1’⊕1
26.计算机中设置Cache的作用是什么?
能否将Cache的容量扩大,最后取代主存,为什么?
计算机中设置Cache的作用是解决CPU和主存速度不匹配问题。
不能将Cache的容量扩大取代主存,原因是:
(1)Cache容量越大成本越高,难以满足人们追求低价格的要求;
(2)如果取消主存,当CPU访问Cache失败时,需要将辅存的内容调入Cache再由CPU访问,造成CPU等待时间太长,损失更大。
28.设主存容量为256K字,Cache容量为2K字,块长为4。
(1)设计Cache地址格式,Cache中可装入多少块数据?
(2)在直接映射方式下,设计主存地址格式。
(3)在四路组相联映射方式下,设计主存地址格式。
(4)在全相联映射方式下,设计主存地址格式。
(5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。
(1)Cache容量为2K字,块长为4,Cache共有2K/4=211/22=29=512块,
Cache字地址9位,字块内地址为2位
因此,Cache地址格式设计如下:
Cache字块地址(9位)
字块内地址(2位)
(2)主存容量为256K字=218字,主存地址共18位,共分256K/4=216块,
主存字块标记为18-9-2=7位。
直接映射方式下主存地址格式如下:
主存字块标记(7位)
(3)根据四路组相联的条件,一组内共有4块,得Cache共分为512/4=128=27组,
主存字块标记为18-7-2=9位,主存地址格式设计如下:
主存字块标记(9位)
组地址(7位)
(4)在全相联映射方式下,主存字块标记为18-2=16位,其地址格式如下:
主存字块标记(16位)
(5)若存储字长为32位,存储器按字节寻址,则主存容量为256K*32/4=221B,
Cache容量为2K*32/4=214B,块长为4*32/4=32B=25B,字块内地址为5位,
在直接映射方式下,主存字块标记为21-9-5=7位,主存地址格式为:
字块内地址(5位)
在四路组相联映射方式下,主存字块标记为21-7-5=9位,主存地址格式为:
在全相联映射方式下,主存字块标记为21-5=16位,主存地址格式为:
第6章计算机的运算方法
9.当十六进制数9B和FF分别表示为原码、补码、反码、移码和无符号数时,所对应的十进制数各为多少(设机器数采用一位符号位)?
真值和机器数的对应关系如下:
9BH
原码
补码
反码
移码
无符号数
对应十进制数
-27
-101
-100
+27
155
FFH
-128
-1
-0
+128
256
11.已知机器数字长为4位(含1位符号位),写出整数定点机和小数定点机中原码、补码和反码的全部形式,并注明其对应的十进制真值。
整数定点机
小数定点机
真值
0,000
+0
0.000
0,001
1
0.001
0.125
0,010
2
0.010
0.250
0,011
3
0.011
0.375
0,100
4
0.100
0.500
0,101
5
0.101
0.625
0,110
6
0.110
0.750
0,111
7
0.111
0.875
1,000
1,111
1.000
1.111
1,001
1,110
1.001
1.110
-0.125
1,010
1,101
-2
1.010
1.101
-0.250
1,011
1,100
-3
1.011
1.100
-0.375
-4
-0.500
-5
-0.625
-6
-0.750
-7
-0.875
无
-8
12.设浮点数格式为:
阶码5位(含1位阶符),尾数11位(含1位数符)。
写出51/128、-27/1024、7.375、-86.5所对应的机器数。
要求如下:
(1)阶码和尾数均为原码。
(2)阶码和尾数均为补码。
(3)阶码为移码,尾数为补码。
据题意画出该浮点数的格式:
阶符1位
阶码4位
数符1位
尾数10位
将十进制数转换为二进制:
x1=51/128=0.0110011B=2-1*0.110011B
x2=-27/1024=-0.0000011011B=2-5*(-0.11011B)
x3=7.375=111.011B=23*0.111011B
x4=-86.5=-1010110.1B=27*(-0.10101101B)
则以上各数的浮点规格化数为:
(1)[x1]浮=1,0001;
0.1100110000
[x2]浮=1,0101;
1.1101100000
[x3]浮=0,0011;
0.1110110000
[x4]浮=0,0111;
1.1010110100
(2)[x1]浮=1,1111;
[x2]浮=1,1011;
1.0010100000
1.0101001100
(3)[x1]浮=0,1111;
[x2]浮=0,1011;
1.0010100000
[x3]浮=1,0011;
[x4]浮=1,0111;
14.设浮点数字长为32位,欲表示±
6万间的十进制数,在保证数的最大精度条件下,除阶符、数符各取1位外,阶码和尾数各取几位?
按这样分配,该浮点数溢出的条件是什么?
若要保证数的最大精度,应取阶码的基值=2。
若要表示±
6万间的十进制数,由于32768(215)<
6万<
65536(216),则:
阶码除阶符外还应取5位(向上取2的幂)。
故:
尾数位数=32-1-1-5=25位
25(32)
该浮点数格式如下:
阶符(1位)
阶码(5位)
数符(1位)
尾数(25位)
按此格式,该浮点数上溢的条件为:
阶码≥25
16.设机器数字长为16位,写出下列各种情况下它能表示的数的范围。
设机器数采用一位符号位,答案均用十进制表示。
(1)无符号数;
(2)原码表示的定点小数。
(3)补码表示的定点小数。
(4)补码表示的定点整数。
(5)原码表示的定点整数。
(6)浮点数的格式为:
阶码6位(含1位阶符),尾数10位(含1位数符)。
分别写出其正数和负数的表示范围。
(7)浮点数格式同(6),机器数采用补码规格化形式,分别写出其对应的正数和负数的真值范围。
(1)无符号整数:
0~216-1,即:
0~65535;
无符号小数:
0~1-2-16,即:
0~0.99998;
(2)原码定点小数:
-1+2-15~1-2-15,即:
-0.99997~0.99997
(3)补码定点小数:
-1~1-2-15,即:
-1~0.99997
(4)补码定点整数:
-215~215-1,即:
-32768~32767
(5)原码定点整数:
-215+1~215-1,即:
-32767~32767
(6)据题意画出该浮点数格式,当阶码和尾数均采用原码,非规格化数表示时:
最大负数=1,11111;
1.000000001,即-2-9⨯2-31
最小负数=0,11111;
1.111111111,即-(1-2-9)⨯231
则负数表示范围为:
-(1-2-9)⨯231——-2-9⨯2-31
最大正数=0,11111;
0.111111111,即(1-2-9)⨯231
最小正数=1,11111;
0.000000001,即2-9⨯2-31
则正数表示范围为:
2-9⨯2-31——(1-2-9)⨯231
(7)当机器数采用补码规格化形式时,若不考虑隐藏位,则
最大负数=1,00000;
1.011111111,即-2-1⨯2-32
最小负数=0,11111;
1.000000000,即-1⨯231
-1⨯231——-2-1⨯2-32
最大正数=0,11111;
0.111111111,即(1-2-9)⨯231
最小正数=1,00000;
0.100000000,即2-1⨯2-32
2-1⨯2-32——(1-2-9)⨯231
17.设机器数字长为8位(包括一位符号位),对下列各机器数进行算术左移一位、两位,算术右移一位、两位,讨论结果是否正确。
[x1]原=0.0011010;
[y1]补=0.1010100;
[z1]反=1.0101111;
[x2]原=1.1101000;
[y2]补=1.1101000;
[z2]反=1.1101000;
[x3]原=1.0011001;
[y3]补=1.0011001;
[z3]反=1.0011001。
算术左移一位:
[x1]原=0.0110100;
正确
[x2]原=1.1010000;
溢出(丢1)出错
[x3]原=1.0110010;
[y1]补=0.0101000;
[y2]补=1.1010000;
[y3]补=1.0110010;
溢出(丢0)出错
[z1]反=1.1011111;
[z2]反=1.1010001;
[z3]反=1.011