计算机组成习题答案及部分解析

2019-6-19
计算机组成习题答案+部分解析,是自己做的,所以可能有些错误
答案用 答案 标注,注释用 注释 标注
P** 为书本的第几页,书本如下图所示,

一、填空题

  1. 设二进制数X=2+100 ×(—0.10101100),用15个二进制位来表示它的浮点数,阶码用5位,其中阶符用2位;尾数用10位,其中符号用2位(2100中的100为二进制数)
    (1)阶码用补码表示,尾数用原码表示的X的机器数为:
    阶码 00100 ;尾数 11.10101100
    阶码的最高符号位恒为0
    (2)阶码用移码表示,尾数用补码表示的X的机器数为:
    阶码 01100 ;尾数 11.01010100
    2.生成多项式G(X)=X4+X1+X0 对应的二进制数为 10011 ,以此多项式进行CRC编码,其校验位的位数是 4 位。
    P65,校验位的位数是多项式的最高次幂,多项式从最高次幂开始,系数不为零的则对应的二进制数是1,系数为零的则对应的二进制数是0

  2. 微程序控制器的核心部件是存储微程序的 控制存储器 ,它一般用ROM构成。
    P121

  3. 512K×16的存储器中,由64K×1的2164RAM芯片构成(芯片内是4个128×128结构),问总共需要 128 个RAM芯片,采用分散式刷新,如最大刷新间隔不超过2ms,则刷新信号的周期是 15.625μs ;若采用集中式刷新,设读写周期为0.1μs,存储器刷新一遍最少用 12.8μs 。刷新计数器有 7 位。
    P82,第二个空为:间隔÷行数,2ms/128=15.625;第三空为:周期×行数,128×0.1=12.8,第四空为128=27

  4. 微程序控制器中,微程序由若干条 微指令 组成,存放在控制存储器中;相应指令的第一条微指令的地址由 操作码译码 得到,之后下一条微指令的地址由 微指令的下址字段 指出。
    P121

  5. 硬布线控制的控制器由 逻辑线路直接连线 产生全机所需的操作控制命令。

  6. 虚拟存储器指的是 主存 - 辅存 层次,在运行时,CPU根据程序指令地址生成的地址是 逻辑地址(虚地址),该地址经过转换形成 物理地址(实地址)
    8.CPU可以直接访问 高速缓存(cache)主存 ,但不能直接访问磁盘和光盘。

  7. 构成运算器的核心部件是 算数逻辑单元 ,而该核心部件的基本逻辑结构是 超前进位加法器 ,如目前国际流行的SN74181就是这种结构。

  8. 决定指令执行顺序的寄存器是 ,而记录指令执行结构的状态的寄存器是 ,在发生中断时,它们将会被保存在 中。

  9. 设基址寄存器内容为0400H,PC的内容为2000H,则指令的地址码部分为50H,内存中部分单元的内容如下:
    | 地址- | -内容- | - 地址- | -内容- |
    |0050H | 1200H | 1200H | 1550H |
    |0400H | 1300H | 143FH | 103FH |
    |0450H | 1400H | 2050H | 2400H |
    |1050H | 1150H | 2400H | 0400H |
    |1150H | 1500H |
    写出若当前指令为下列各种寻址方式时,操作数是多少?
    (1)立即寻址方式:操作数为 50H
    立即寻址,所需的操作数由指令的地址码部分直接给出,即地址码就是操作数。地址码为50H,操作数就是50H
    (2)间接寻址方式:操作数为 1550H
    间接寻址,指令中地址码字段给出的是存放操作数地址的存储单元地址,简称操作数地址的地址,放在寄存器中的是操作数的地址,而操作数放在内存中。由指令的地址码部分为50H得到操作数的地址为1200H,由1200H得到操作数为1550H
    (3)基址寻址方式:操作数为 1400H
    基址寻址,操作数为基址寄存器内容+指令的地址码。0400H+50H,地址0450H中的内容为1400H
    (4)相对寻址方式:操作数为 2400H
    相对寻址,操作数为PC的内容+位移量。2000H+50H,地址2050H中的内容为2400H
    P93

  10. 主存储器容量为16MB,虚存容量为4GB,则虚拟地址为 32 位,物理地址为 24 位,如果页面大小为4KB,则页表的长度为 220
    第一空为4GB=232,第二空为16MB=224,第三空为232 / 212=220

  11. 微程序控制器中,微程序由若干条微指令组成,存放在控制存储器中;相应指令的第一条微指令的地址由 操作码译码 得到,之后下一条微指令的地址由 微指令的下址字段 指出。

  12. 设X的符号为Xf,Y的符号为Yf,加法运算结果的符号为Sf,则判断溢出的逻辑表达式为V= XfYfSf+XfYfSf,即两个符号相同的数相运算,其运算结果符号相反则溢出。

  13. 从计算机指令系统设计的角度,可将计算机分为复杂指令集系统计算机和 精简指令集计算机系统

  14. 假设微处理器的主振频率为200MHZ,每个指令周期平均为2.5个CPU周期,每个CPU周期平均包括2个主频周期,则它的平均运算速度近似为 40 MIPS。
    200M / 2.5 / 2 = 40

  15. 若采用偶校验,数据0011011的校验位是 0
    P61,偶校验即“1”的个数为偶数。题目中1的个数已经为偶数了,所以校验位应该为0,保持“1”为偶数。

  16. 某模型机如下图所示,→代表控制信号,代表数据信号,请在横线上填入计算机硬件系统基本组成部件的名称。
    在这里插入图片描述
    A:运算机
    B:控制器
    C:存储器
    D:输入设备
    E:输出设备

  17. 在定点运算中,当运算结果超出 机器数表达范围 时称为溢出,若用双符号S0´S0的补码表示,则当S0´S0 为   10或01 时为溢出。

  18. CPU通常至少有 程序计数器(PC)指令寄存器(IR),地址寄存器(AR)、数据寄存器、程序状态字寄存器(PSW)和累加器六个寄存器。

二、选择题
20. 组成一个运算器需要多个部件,但下面所列( D )不是组成运算器的部件。
A. 状态寄存器 B. 数据总线 C. ALU D. 地址寄存器
运算器ALU主要由寄存器和算术逻辑线路构成,寄存器包括状态寄存器,算术逻辑线路主要是完成各种运算功能,因此会涉及数据总线
21. 存储周期是指( D )。
A. 存储器的读出时间
B. 存储器进行连续读和写操作所允许的最短时间间隔
C. 存储器的写入时间
D. 存储器进行连续写操作所允许的最短时间间隔
P70
22. 采用寄存器间接寻址方式,则操作数在 ( A )中。
A. 主存 B.寄存器 C. 直接存取存储器 D. 磁盘
P95,寄存器间接寻址,寄存器中的是操作数的地址,而操作数放在内存中
23. 在指令格式中,采用扩展操作码设计方案的目的是 ( C )。
A. 减少指令字长度 B. 增加指令字长度
C. 保持指令字长度不变而增加指令操作的数量
D. 保持指令字长度不变而增加寻址空间
P90,操作码扩充到地址字段,在不增加指令长度的情况下扩展操作码长度,使能表示更多的指令
24. 设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(用补码表示)。每当CPU从存储器取出第一个字节时,即自动完成(PC)+1→PC。若该指令的地址为2003H,要求转移到200AH地址,则该转移指令第二字节的内容应为 ( A )。
A. 05H B. 06H C. 07H D.08H
P95,由“每当CPU从存储器取出第一个字节时,即自动完成(PC)+1→PC”可知取出完整指令后该指令的地址从2003H变为2005H,相对位移量为:200AH - 2005H = 05H(原码),补码为05H,因此选C
25. 关于超前进位加法器,以下叙述错误的是( B )。
A. 超前进位解决的问题是进位的传递速度
B. 各位的进位不仅与两个参加操作的数有关,还与低位的进位相关
C. 由于各位的操作数是同时给出的,各进位信号几乎可以同时产生
D. 运算速度高于串行进位加法器
P14
26. 某一SRAM 芯片,其容量为10248位,包括电源、接地端、读写控制、片选信号,该芯片引脚的最小数目为 ( B )。
A. 20 B. 22 C. 25 D. 30
**由“其容量为1024
8位”可知1024=210,因此需要10个地址引脚+8个地址引脚,“电源、接地端、读写控制、片选信号”分别需要1个引脚,因此10+8+4=22**
27. 计算机的存储系统是指( D ).
A. RAM B. ROM C. RAM和ROM D. CACHE、主存和辅存
P165
28. 在微程序控制方式中,机器指令和微指令的关系是 ( B )。
A 每一条机器指令由一条微指令来解释执行
B 每一条机器指令由一段(或一个)微程序来解释执行
C 一段机器指令组成的工作程序可由一条微指令来解释执行
D 一条微指令由若干条机器指令组成
P121
29. 为使虚存系统有效的发挥其预期的作用,所运行的程序应具有的特性是 ( A )。
A. 该程序不应含有过多的I/O操作 B. 该程序的大小不应超过实际的内存容量
C. 该程序的大小不应小于实际的内存容量 D. 该程序的指令间相关不应过多
30. 相联存储器是按 ( C )进行寻址的存储器。
A. 地址指定方式 B. 堆栈存储方式
C. 内容指定方式 D. 地址指定方式和堆栈存储方式结合
31. 假设微处理器的主振频率为50MHZ,两个时钟周期组成一个机器周期,平均三个机器周期完成一条指令,则它的平均运算速度近似为 ( C )MIPS。
A. 2 B. 3 C. 8 D.15
50÷(2×3)≈8
32. 下列叙述中,不能反映RISC特征的是 ( D ) 。
A. 简单的指令系统 B. 指令长度不可变
C. 执行每条指令所需的机器周期数的平均值小于2 D. 使用微程序控制器
33. 采用增量与下地址结合方式产生后继微指令地址,其基本思想是 ( B )。
A、 用程序计数器PC来产生后继微指令地址
B、 通过微指令顺序控制字段中由设计者指定或者由设计者指定的判断字段,控制产生后继微指令地址;
C、 用微程序计数加MPC来产生后继微指令地址;
D、 通过指令中指定一个专门字段来控制产生后继微指令地址。
34. 微型机系统中,主机和高速硬盘进行数据交换一般采用( D )方式。
A. 程序中断方式 B.程序直接控制 C.通道方式 D.直接存储器存取(DMA)
35. 50多年来,计算机系统结构有了很大新发展,但原则上变化不大,习惯上仍称之为 ( D ) 机。
A.牛顿 B.爱因斯坦 C.爱迪生 D. 冯. 诺依曼
17.一条指令通常分为两个部分:(A) 和地址码。
A. 操作码 B. 微操作码 C. 控制码 D. 微地址码
36. 浮点数的表示范围和精度取决于 (A) 。
A. 阶码的位数和尾数的位数; B. 阶码采用的编码和尾数的位数;
C. 阶码采用的编码和尾数采用的编码;D. 阶码的位数和尾数采用的编码。
37. 串行运算器是一种最简单的运算器,其运算规则是:按时间先后次序 (A) 。
A. 由低位到高位逐位运算 B. 由高位到低位逐位运算
C. 由低位到高位先行进位运算 D. 由高位到低位先行借位运算
38. 浮点数N=M×RE,若阶的基数R=2,则下列补码 (C) 为规格化的数。
A. 0.00101110 B. 1.11001010 C. 1.01010011 D. 0.01001001
规格化的补码:符号位与最高数值位不一样

三、分析计算或设计
39. 已知 x=0.1011,y=-0.1001 ,用补码一位乘法计算x×y (要求过程) 。
P49

2.已知 X=2-01×(+0.101101),Y=2+11×(-0.100110),求X×Y。(要求阶码用双符号位移码表示并运算,尾数用补码表示并用补码二位乘法计算)
P54

3.设生成多项式为x3+x1+1,试写出对应的二进制码,并计算数据信息1010101的CRC编码。
P64
①生成对应的二进制码,②求校验码的位数r,③校验码值=[(数据左移r位(低位补零)) / 生成的二进制码]的余数(采用 模2除),④生成CRC码

  1. 某计算机的字长为16位,存储器按字编址,访存指令如下:

在这里插入图片描述
其中OP是操作码,M定义寻址方式(见表),A为形式地址。设PC和Rx分别为程序计数器和变址寄存器,字长为16位。问:
(1) 该格式能定义多少种指令?
32
OP有5位,即有25=32种指令
(2) 各种寻址方式的寻址范围为多少字?
(3) 写出各种寻址方式的有效地址EA的计算式。
立即寻址:A为操作数
直接寻址:EA=A,0~255字
间接寻址:EA=(A),0~65535字
变址寻址:EA=(Rx)+A,0~65535字
相对寻址:EA=(Pc)+A,0~65535字

直接寻址:形式地址有8位,28=256
间接寻址、变址寻址、相对寻址:寄存器字长为16位,216=65536

  1. 某微程序控制器中,已知全机共有微命令20个(采用直接控制),可判断条件有4个(译码控制),微指令字长30位。请设计微命令的具体格式,控制存储器的容量为多少?

    容量 = 28×30位 = 256×30位(8是BAF的8位)
    P121、P130
    BCF:转移控制字段,是转移的条件;BAF:转移地址字段,是转移的地址。BCF和BAF合起来称为下址字段。
    “全机共有微命令20个”,因此控制字段为20位。
    “可判断条件有4个”,4=22,因此BCF为2位。
    “微指令字长30位”,30-20-2=8位,因此BAF为8位。

  2. 某机采用微程序控制方式,微指令字长24位,采用水平编码控制的微指令格式,共有微命令30个,构成4个相互排斥类,各包含5个,8个,14个,3个微命令,外部条件3个(直接控制)。
    1) 控制存储器的容量应为多少?
    2) 设计出具体微指令的具体格式。

    容量 = 28×24位 = 256×24位

P121、P130
“4个相互排斥类”,因为是排斥类,考虑每类必须增加一种不发命令的情况,因此5、8、14、3都需要+1,变成6、9、15、4,而22<6<23,23<9<24,23<15<24,21<4≤22,分别需要3、4、4、2位。
“外部条件3个”,因此BCF为3位。
24-3-4-4-2-3=8位,因此BAF为8位。

8.存储器分布图如下所示(按字节编址),现有芯片ROM 8K8和RAM 8K4,设计此存储系统,将RAM和ROM与CPU连接。
RAM1 0000H—3FFFH
ROM A000H—BFFFH
0000H—3FFFH 总共有4000H = 4×163 = 214 ,而RAM 8K4中 8K = 213, 214 / 213 = 2,所以RAM需要2片。
A000H—BFFFH 总共有2000H = 2×163 = 213,而ROM 8K
8中 8K = 213, 213 / 213 = 1,所以ROM需要1片。

  1. 一个组相联地址映像cache由64个存储块构成,每组包含4个存储块。主存包含4096个存储块,每块由8个字组成,每字为32位。存储器按字节编址,访存地址为字地址。
    1) 写出cache的地址位数和地址格式。
    2) 写出主存的地址位数和地址格式。
    3) 画出组相联地址映像的示意图。
    4) 主存地址18AB9H映射到cache 的哪个字块?



    主存地址18AB9H转为二进制位11000101010111001,对应到主存地址格式,可知组号为0101=5,因此,可映射到cache的第5组即第20块/21块/22块/23块(由cache格式可知块内地址为4,因此有4块)。

“cache由64个存储块构成,每组包含4个存储块”,因此有64/4=16组,为24,因此cache组号为4位。每组4个存储块,4=22,因此块号为2位。64个存储块,64=26,因此块内地址为6-2=4位。
主存中的组号与cache一样,因此为4位。4096个存储块,4096=212,标记位为12-4=8位。“每块由8个字组成,每字为32位”,每块8×32/8=32=25个字节,因此块内地址为5位。

  1. 某机主存容量为1MB,采用两路组相联方式的Cache容量为64KB,每个数据块为256字节。CPU要顺序访问地址为20124H,60140H的两个内存单元中的数。已知访问开始前CACHE的第二组(组号为1)中两块的主存字块标记如图所示。请问:
    1)写出cache的地址位数和地址格式。
    2)写出主存的地址位数和地址格式。
    3)上述两个数能否从CACHE中读取,若能,给出实际访问的CACHE地址;若不能,请说明应该如何做,才能从CACHE中读取(LRU算法)。
    |0号块 | 00100(二进制)|
    |1号块 | 01011(二进制)|


    20124H转化成二进制为00100000000100100100,对应到主存的格式,可知组号为1,标记位为00100,对应到题中所给的0号块,因此,命中。实际地址为块内地址,即00100100,即24H。
    60140H转化成二进制为01100000000101000000,对应到主存的格式,可知组号为1,标记位为01100,题中所给的块没有与之对应的,即不能映像成功,所以要用LRU算法置换。

    Cache容量为64KB,64KB=216,“每个数据块为256字节”,256=28因此块内地址为8位,剩余的“组号+块号”为16-8=8位,采用两路组相联,1组2块,因此28=27×2,所以是27组,因此组号为7位。块号为2=21,因此块号为1位。
    主存的组号与cache相同,为7位。“每个数据块为256字节”,256=28因此块内地址为8位,“主存容量为1MB”,1MB=220,剩余20-7-8=5位,因此标记位为5位。

11.设主存容量为4MB,虚存容量1GB,页面大小为4KB。
1) 写出主存地址格式。
页内地址+页面号
2) 写出虚存地址格式。
页内地址+页号
3) 页表长度为多少?
页表长度 = 1GB / 4KB = 230 / 212 = 218

  1. 设某虚拟存储器有如下快表放在相联存储器中,其容量为8个存储单元,问按如下三个虚拟地址访问,主存的实际地址码各是多少?若无法形成主存地址,将会如何处理。(均为16进制)
    在这里插入图片描述
    ①8000H + 0324H = 80324H
    ②96000H + 0128H = 96128H
    ③去主存查找,有可能重新分配

  2. 某计算机字长16位,运算器16位,有16个通用寄存器,8种寻址方式,主存容量为64K字,指令中地址码有寻址方式字段和寄存器字段组成,试问:
    1) 双操作数指令最多有多少条?

    字长为16位,因此一共为16位。16个通用寄存器,16=24,需4位。8种寻址方式,8=23,需3位。4+3=7,因此,操作数为7位,因为是双操作数,因此为7位+7位,剩余OP为2位,即22=4,所以最多有4条。
    2) 单操作数指令最多有多少条?

    ==原理与第一题同理,29=512,所以最多有512条。
    3) 间接寻址的范围有多大?
    间接寻址的操作数放在内存中,主存容量为216=65536,因此范围为0~65535
    4) 直接寻址的范围有多大?
    因此3位的寻址方式确定以后不能再更改,因此范围取决于4位的寄存器编号,24=16,因此范围为0~15

  3. 某计算机字长16位,主存容量64KB,包含8个16位通用寄存器,采用单地址指令,共有100条指令,采用寄存器直接、存储器间接、变址和相对四种寻址方式,请设计该指令系统(即指令格式)并说明你的设计思想。

    “主存容量64KB”,64KB=216,因此一共为16位。“共有100条指令”,26<100<27,因此,OP为7位。“8个16位通用寄存器”,8=23,因此寄存器编号为3位,“采用寄存器直接、存储器间接、变址和相对四种寻址方式”,4=22,因此寻址方式为2位。16-7-2-3=4,因此地址码为4位。

  4. 指令长度16位,包括4位基本操作码字段和3个4位地址字段,请设计成:15个3地址指令、15个2地址指令、15个1地址指令和 16个0地址指令。

    P89

  5. 设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(用补码表示)。每当CPU从存储器取出第一个字节时,即自动完成(PC)+1→PC。设该指令的地址为2003H,要求转移到200AH,则转移指令的第二字节的内容为多少?若为2008H,要求转移到2001H地址,则该转移指令第二字节的内容应为什么?
    因为“每当CPU从存储器取出第一个字节时,即自动完成(PC)+1→PC”,所以取出完整指令后2003H变为2005H,第二节(相对位移量)为:200AH - 2005H = 05H(原码),补码为05H。
    2008H取出完整指令后为200AH,则200AH + X = 2001H,X = -9H,补码为11110111 => F7H

    P95

17.已知某运算器的基本结构如图所示,它具有+(加)、-(减)、M(传送)三种操作。

1) 写出图中1-12表示的运算器操作的微命令;
1:+ , 2:- , 3:M , 4:R1->A , 5:R2->A , 6:R3->A , 7:R1->B , 8:R2->B , 9:R3->B , 10:BUS->R1 , 11:BUS->R2 , 12:BUS->R3
2) 指出相斥性微操作;
1/2/3互斥,4/5/6互斥,7/8/9互斥,10/11/12不互斥
3) 若控制存储器容量为512*17,设计适合此运算器的微指令格式。
双稳态触发器,信息不丢失
P121、P130

  1. 简述SRAM和DRAM的区别。
    SRAM是静态随机存储器,集成度低,价格高,不需要周期性刷新,存取速度快,用作cache。
    DRAM是动态随机存储器,集成度高,价格低,需要周期性刷新,存取速度慢,用作主存。

    P79、P171
    (1)每片DRAM存储容量大约是SRAM的4倍。
    (2)DRAM的价格比较便宜,大约只有SRAM的1/4。
    (3)由于使用动态元件,DRAM所需功率大约只有SRAM的1/6。
    (4)DRAM需要刷新,而SRAM不需要。
    (5)SRAM一般用作容量不大的高速存储器,DRAM一般用作主存。

  2. 简述同步控制方式和异步控制方式的区别。
    两者最核心的区别:有无统一时序划分
    P146

  3. 静态存储器(SRAM)依靠什么来存储信息?为什么称为“静态”存储器?
    静态存储器依靠双稳态电路的两个稳定状态来分别存储0和1.这类存储器在电源正常情况下,可以长期保存信息不变(除非重新写入),不需要动态刷新,所以称为“静态”存储器。
    P71

  • 20
    点赞
  • 170
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值