计算机组成原理作业讲解1-4章 答案 下载本文

1.1 概述数字计算机的发展经过了哪几个代?各代的基本特征是什么? 略。

1.2 你学习计算机知识后,准备做哪方面的应用? 略。

1.3 试举一个你所熟悉的计算机应用例子。

略。

1.4 计算机通常有哪些分类方法?你比较了解的有哪些类型的计算机?

略。

1.5 计算机硬件系统的主要指标有哪些?

答:机器字长、存储容量、运算速度、可配置外设等。

答:计算机硬件系统的主要指标有:机器字长、存储容量、运算速度等。 1.6 什么是机器字长?它对计算机性能有哪些影响?

答: 指CPU一次能处理的数据位数。它影响着计算机的运算速度,硬件成本、指令系统

功能,数据处理精度等。

1.7 什么是存储容量?什么是主存?什么是辅存?

答:存储容量指的是存储器可以存放数据的数量(如字节数)。它包括主存容量和辅存容量。

主存指的是CPU能够通过地址线直接访问的存储器。如内存等。

辅存指的是CPU不能直接访问,必须通过I/O接口和地址变换等方法才能访问的存储器,如硬盘,u盘等。

1.8 根据下列题目的描述,找出最匹配的词或短语,每个词或短语只能使用一次。 (1)为个人使用而设计的计算机,通常有图形显示器、键盘和鼠标。

(2)计算机中的核心部件,它执行程序中的指令。它具有加法、测试和控制其他部件的

功能。

(3)计算机的一个组成部分,运行态的程序和相关数据置于其中。

(4)处理器中根据程序的指令指示运算器、存储器和I/O设备做什么的部件。 (5)嵌入在其他设备中的计算机,运行设计好的应用程序实现相应功能。 (6)在一个芯片中集成几十万到上百万个晶体管的工艺。 (7)管理计算机中的资源以便程序在其中运行的程序。 (8)将高级语言翻译成机器语言的程序。

(9)将指令从助记符号的形式翻译成二进制码的程序。 (10)计算机硬件与其底层软件的特定连接纽带。

供选择的词或短语:

1、汇编器 2、嵌入式系统 3、中央处理器(CPU) 4、编译器 5、操作系统 6、控制器 7、机器指令 8、台式机或个人计算机 9、主存储器 10、VLSI 答:(1)8,(2)3,(3)9,(4)6,(5)2, (6)10,(7)5,(8)4,(9)1,(10)7

计算机系统有哪些部分组成?硬件由哪些构成? 答:计算机系统硬件系统和软件系统组成。

硬件由控制器、存储器、运算器、输入设备和输出设备五大部件构成 1.9 冯·诺伊曼Von Neumann计算机的主要设计思想是什么? 略。

1.10 计算机硬件有哪些部件,各部件的作用是什么?

略。

1.11 计算机软件包括哪几类?说明它们的用途。 略。

1.12 简述计算机系统的多级层次结构的分层理由及各层的功能。 略。

1.13 通过计算机系统的层次结构学习,你对计算机系统有了怎样的了解? 略。

第二章

2.1 数字信号和模拟信号的主要区别是什么?与模拟电路相比,数字电路有何特点? 略。

2.2 二极管两端需要加多大的电压才使二极管导通?

答:大于二极管的正向特性存在死区电压Vr(硅二极管约为0.7V,锗二极管约为0.2V) 2.3 三极管何时处于截止状态,何时处于饱和状态?

答:当输入电压Vi>0,且Vi < 死区电压Vr’,三极管处于截止状态。 当输入电压Vi增大,基极电流IB、集电极电流IC随之增大,输入电压VCE=VCC-ICRC不断下降,当VCE降到0.7V以下时,发射结仍正向偏置,集电结则由反向偏置转为正向偏置,此时三极管进入饱和状态。

2.4 双极型逻辑门和单极型逻辑分别是怎样形成的?它们各有何特点? 略.

2.5 实现逻辑代数的基本运算有哪几种逻辑门? 答:与,或,非。

2.6 分析图2-41所示的逻辑电路图,写出表达式并进行化简。

AABBCDFF(a)(b)

(a)F? AB

(b) F=AD+C +BD

2.7 请用代数化简法将下列各逻辑表达式化成最简式。 (1)F?AB?BC?BC?AB 答:F?AB?AC?BC

(2)F?AD?AD?AB?AC?BD?ACEF?BEF?DEFG

图2-41 习题2. 6图答:

答:F?A?C?BD?BEF

2.8 分析图2-42所示的逻辑电路,列出真值表,说明其逻辑功能。

X0AF1X1FX2BCX3F2A1

A0图2-42 习题2. 8图图2-43 习题2.9 图2.8 答:

A1 A0 X0 X1 X2 X3 F 0 0 X X X X X0 0 1 X X X X X1 1 0 X X X X X2 1 1 X X X X X3

图2-42是一个四选一电路

2.9 分析图2-43所示的逻辑电路图,列出真值表,说明其逻辑功能。 答:

A B C F1 F2 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1

图2-43是一个一位全加器,A, B为加数和被加数,C为低位进位, F1为和,F2为产生的进位。

(图中有错误,第4个与门的输入少了 A )

2.10 请用卡诺图法将下列各逻辑表达式化成最简式。

(1)F?AB?ABD?AC?BCD

(2)F?AC?AB?BCD?BCE?CDE 答:(1)F?AC?AB

(2)F?AB?BD?CE?AC

2.11 简述组合逻辑电路的设计过程。 略:

2.12 用与非门设计实现下列函数的组合逻辑电路。 (1)F(A,B,C,D)??m(0,2,6,7,10,13,14,15);

(2)F(A,B,C,D)??m(2,4,5,6,7,10)???(0,3,8,15)。

答:(1)

F?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD?ABCDBC?CD?ABD?ABD=BCCDABDABD

图略。 (2)

F?ABCD?ABCD?ABCD?ABCD?ABCD?ABCD??(ABCD?ABCD?ABCD?ABCD)=AC?AB?BCD=ACABBCD

图略。

2.13 用一位全加器组成4位并行进位加法器,其并行进位电路应该如何实现?略。

2.14请画出74LS273的典型用法的接线图。 2.15 什么是三态门?一般应用在什么场合? 略

2.16计算机中常用的寄存器有哪些?请说明如何使用? 略

2.17 请说明74LS299的功能及使用方法。 略

2.18 请说明74LS161的功能及使用方法。 略

习题3

3.1 求下列各数的十进制数值:

(1)(267.3)8 (2)(BD.C)16 (3)(1011011.101)2 答:.(1 ) 183.375, (2) 189.75, (3 ) 91.625

3.2 将下列十进制数转化为二进制、八进制和十六进制数据(小数取四位二进制有效数

据):

(1)-282.75 (2)123.46 (3)-115/512 (4)44.9375 答:2.

序号 十进制 十六进制 二进制 八进制 (1) -282.75 -11A.C -100011010.1100 -432.6 (2) 123.46 7B.7 1111011.0111 173.34 (3) -115/512 -0.388 -0.001110011 -0.163 (4) 44.9375 2C.F 101100.1111 54.74

3.3 写出下列各数的原码、反码和补码,机器数长度为8位:

(1)0 (2)-127 (3)-0.5 (4)-19/128 (5)100 (6)23/64 序号 真值 原码 补码 反码 (1) 0 00000000 00000000 00000000

10000000 11111111

0.0000000 0.0000000 0.0000000

1.0000000 1.1111111

(2) -127 11111111 10000001 10000000 (3) -0.5 1.1000000 1.1000000 1.0111111 (4) -19/128 1.0010011 1.1101101 1.1101100 (5) 100 01100100 01100100 01100100 (6) 23/64 0.0101110 0.0101110 0.0101110

3.4 写出下列各机器数的二进制真值X:

(1)[X]补=0.1001 (2)[X]补=1.1001 (3)[X]原=0.1101 (4)[X]原=1.1101 (5)[X]反=0.1011 (6)[X]反=1.1011 (7)[X]移=0,1001 (8)[X]移=1,1001 (9)[X]补=1,0000000(10)[X]反=1,0000000(11)[X]原=1,0000000 (12)[X]移=1,0000000 答:

(1) +1001 (7) - 0111 (2) - 0111 (8) +1001 (3) +1101 (9) - 10000000 (4) -1101 (10) - 01111111 (5) +1011 (11) - 00000000 (6) -0100 (12) 00000000

3.5 设某机器数字长为8位,有两个数的16进制表示形式为9CH和FFH,问:若它们分

别表示为下列格式的机器数时,其对应的十进制真值是多少? (1) 无符号整数;

(2) 原码表示的定点整数; (3) 原码表示的定点小数;

(4) 补码表示的定点整数; (5) 补码表示的定点小数; (6) 反码表示的定点整数; (7) 移码表示的定点整数。

答: 数 9CH FFH

无符号整数 156 255 原码表示的定点整数 -28 -127 原码表示的定点小数 -(2-3+2-4+2-5)= -0.21875 -(1-2-7) 补码表示的定点整数 -100 -1 补码表示的定点小数 -(2-1+2-2+2-5)=0.78125 -2-7 反码表示的定点整数 -99 -0 移码表示的定点整数 28 127

3.6 假设某规格化浮点数的尾数表示形式为M0.M1 …… Mn,选择正确的答案写在横线上: (1) 若尾数用原码表示,则尾数必须满足 D 。 (2)若尾数用补码表示,则尾数必须满足 GH 。 A.M0=0 B.M0=1 C.M1=0 D.M1=1 E.M0.M1=0.0 F.M0.M1=1.1 G.M0.M1=0.1 H.M0.M1=1.0 答:(1)D ;(2)GH

3.7 浮点数的表示范围取决于 D 的位数,浮点数的表示精度取决于 C 的位

数,浮点数的正负取决于 A , E 在浮点数的表示中是隐含规定的。 A.数符 B.阶符 C.尾数 D.阶码 E.阶码的底 答:D, C, A, E

3.8 设一浮点数格式为:字长12位,阶码6位,用移码表示,尾数6位,用原码表示,

阶码在前,尾数(包括数符)在后,则按照该格式:

(1)已知X=-25/64,Y=2.875,求数据X、Y的规格化的浮点数形式。 (2)已知Z的浮点数以十六进制表示为9F4H,则求Z的十进制真值。 答:

(1)

X=-0.11001×2-1, [X ]浮=1.11001×2011111

[X ]浮=0,11111 1.11001

Y=0.10111×22 , [Y ]浮=0.10111×2100010

[Y ]浮=1,00010 0.10111

(2)[Z]浮= -0.10100×2100111 Z= -80

3.9 设一机器数字长16位,求下列各机器数的表示范围: (1) 无符号整数;

(2) 原码表示的定点整数; (3) 补码表示的定点整数; (4) 补码表示的定点小数;

(5) 非规格化浮点表示,格式为:阶码8位,用移码表示,尾数8位,用补码表示(要求写

出最大数、最小数、最大负数、最小正数);

(6)

上述浮点格式的规格化浮点表示范围(要求写出最大数、最小数、最大负数、最小正数)。

答: 机器字长16位, 下列各数的表示范围 (1) 无符号整数 0~216-1

(2) 原码定点整数 -(215-1) ~ +215-1 (3) 补码定点整数 -215 ~ +215-1 (4) 补码定点小数 -1 ~ + 1-2-15

(5)、(6) 阶码八位,移码表示,尾数8位,补码表示 最大数 最小数 最大负数 最小正数 非规格化浮1,1111111 1,1111111 0,0000000 0,0000000

0.1111111 1.0000000 1.1111111 0.0000001 点数

(1-2-7)×2+127 -1×2+127 -2-7×2-128 2-7 ×2-128

规格化浮点1,1111111 1,1111111 0,0000000 0,0000000

0.11111111 1.0000000 1.01111111 0.1000000 数

(1-2-7)×2+127 -1 ×2+127 -(0.5+2-7 ) 0.5 ×2-128

×2-128

3.10 将下列十进制数转换为IEEE754 单精度浮点数格式:

(1)+36.75 (2)-35/256

答: (1)1,0000100 0.00100110000000000000000=84130000H (2)0,1111100 1.00011000000000000000000=7C8C0000H 3.11 求下列各IEEE754 单精度浮点数的十进制真值:

(1)43990000H (2)00000000H 答:(1)1.10011001*2-60 (2)2-127 3.12 在汉字系统中,有哪几种编码?它们各自有什么作用? 略。 3.13 汉字库中存放的是汉字的哪一种编码?汉字库的容量如何计算? 字形码 。 3.14 在一个应用系统中,需要构造一个包含了100个汉字的汉字库,假设采用16×16的

汉字字形,问:该汉字库所占存储容量是多少字节?一篇由50个汉字构成的短文,需要占用多少字节的存储容量来存储其纯文本? 3200字节,50*2=100字节 3.15 汉字系统的几种编码中,对于某个汉字来说,是 惟一的。

A. 输入码 B. 字模码 C. 机内码

3.16 若下面的奇偶校验码均正确,请指出哪些是奇校验码,哪些是偶校验码。 (1) 10110110奇 (2)01111110 偶 (3)11011000 偶(4)10100001奇 3.17 在7位的ASCII码的最高位前面添加一位奇(偶)校验位后,即可构成8位的ASCII

码的奇(偶)校验码。假设字符“A”的这样的奇(偶)校验码为41H,则它是B(1);字符“C”的这样的(1)是C。 01000001 (1): A. 奇校验码 B. 偶校验码 (2): A. 43H B. 87H C. C3H 1100,0011 D. 86H

3.18 对于3.6.2节所介绍的k=8,r=4的能纠错一位的海明码,若编码为100110111100,

试判断该海明码是否有误,若有,请纠正,并写出其8位正确的有效信息。

海明码:100010111100,

3.19 试设计有效信息为10位的能纠错一位的海明码的编码和译码方案,并写出有效信息

0110111001的海明码。

3.20 在3.6.2节所介绍有效信息为8位的能纠错一位的海明码基础上,思考如何改进,使

其能够达到检错两位并能纠错一位的校验能力。

3.21 设生成多项式为X3+X+1(即1011B),请计算有效数据10101的CRC编码。 10101101

3.22 试分析3.3节介绍的三种奇偶校验、海明校验和CRC校验三种校验码的检错纠错能

力,它们的码距各为多少?

3.23 在Motorola系列的微处理器中,数据存放在内存的规则是高位字节存放在低地址单

元的,对照图3.10写出各数据在这种情况下的存储方式。

习题4

4.1 设X=0.1101,Y= -0.0110,求:

(1)[X]补

(2)[-X]补

(3)[2X]补 (7)[Y]补 (11)[Y/2]补

(4)[-2X]补 (8)[-Y]补 (12)[-Y/2]补

(5)[X/2]补 (9)[2Y]补 (13)[-Y/4]补

1. (1) [X]补= 0.1101 (2) [-X]补= 1.0011 (3) [2X]补= 0.1010 溢出 (4) [-2X]补= 1.0110 溢出 (5)[X/2]补= 0.0110 (6)[-X/2]补= 1.1001 (7)[Y]补= 1.1010

4.2 已知X和Y,用变形补码计算X+Y和X-Y,并指出运算结果是否溢出: (1) X=0.11011,Y=0.11111 (2) X=-0.1101,Y=0.0110

答:.

(1) [X+Y]补: 溢出 [X-Y]补= 1.11100 (2) [X+Y]补=1.1001 (8) [-Y]补= 0.0110 (9) [2Y]补=1.0100 (10)[-2Y]补=0.1100 (11)[Y/2]补=1.1101 (12)[-Y/2]补= 0.0010 (13) [-Y/4]补= 0.0001

(6)[-X/2]补 (10)[-2Y]补

[X-Y]补: 溢出

4.3 试使用两个4位二进制加法器和若干逻辑门电路,设计一位余3码编码的十进制加法器。(提

示:余3码加法的校正规则为:当余3码编码的两个数直接相加后,若结果有进位,则和数加3校正;否则和数减3校正) 图在word下不好画:略: 4.4 使用原码一位乘法计算X*Y: (3) X=0.11101,Y=0.01111 (4) X=-0.10011,Y=0.11010

答: (1)

[X*Y]原 =0.0110110011 (2)

[X*Y]原 = 1.0111101110 4.5 使用补码Booth乘法计算X*Y: (5) X=0.01111,Y=-0.11101 (6) X=-0.10011,Y=-0.11010

答:(1)

[X*Y]补 =1.1001001101 (2)

[X*Y]补 =0.0111101110

4.6 分别使用原码恢复余数除法和原码加减交替除法计算X/Y: (7) X=0.0111,Y=0.1101 (8) X=0.1011,Y=-0.1110

答:(1)原码恢复余数除法: [Qs]原= 0.1000 ; [R]原=0.00001000 原码加减交替除法: [Qs]原= 0.1000; [R]原=0.00001000

(2)原码恢复余数除法: [Qs]原= 1.1100 ; [R]原=0.00001000 原码加减交替除法: [Qs]原= 1.1100 ; [R]原=0.00001000

4.7 使用补码不恢复余数除法计算X/Y: (9) X=0.0111,Y=0.1101 (10) X=0.1011,Y=-0.1110

答:(1)[Qs]补= 0.1001; [R]补=0.00001110 (2)[Qs]补= 1.0011 ; [R]补=0.00001100

4.8 设浮点数的格式为:阶码5位,尾数6位,均用补码表示,请计算X+Y和X-Y。(阶码和

尾数均用补码计算)。 (11) X= -1.625,Y=5.25 (12) X=15/64,Y= -29/256

答:(1)[X+Y]补 =0,0010 0.11101; X+Y=0.11101×2

0010

[X-Y]补 =0,0011 1.00101;

X-Y=-0.11011×2

0011

(2) [X+Y]补 =1,1101 0.11111;

X+Y=0.11111×2

– 0011

[X-Y]补 =1,1111 0.10110; X-Y=0.101102

- 0001

4.9 设浮点数的格式为:阶码5位,用移码表示,尾数6位,用补码表示,请计算X*Y和X/Y

(阶码用移码计算,尾数用任何一种机器数的串行乘除算法计算)。 (13) X=5.25,Y= -1.625 (14) X= -29/256,Y=15/64

答:(1) [X×Y]浮=1,0100 1.01111; X*Y=-0.10001×2

0100

[X/Y]浮= 1,0010 1.00111; X/Y=-0.11001×2

0010

(2) [X×Y]浮=0,1011 1.00101; X*Y=-0.11011×2

-0101

[X/Y]浮= 0,1111 1.00001; X/Y=-0.11111×2

-0001

4.10

假设浮点数加减运算时,尾数采用变形补码(模4补码)进行运算,运算结果形式为:MS1 MS2.M1 …… Mn,选择正确的答案写在横线上:

(15) 若尾数运算结果形式满足 条件时,结果需要左规; (16) 若尾数运算结果形式满足 条件时,结果需要右规(1次); (17) 若尾数运算结果形式满足 条件时,结果不需要规格化;

A.MS1MS2.M1=00.0 D.MS1MS2.M1=01.1 G.MS1MS2.M1=11.0 4.11

B.MS1MS2.M1=00.1 E.MS1MS2.M1=10.0 H.MS1MS2.M1=11.1

C.MS1MS2.M1=01.0 F.MS1MS2.M1=10.1

答:(1)A, H (2)D,E,F (3)B

浮点数运算的溢出判断,取决于 。

B.尾数是否下溢 D.阶码是否下溢

A.尾数是否上溢 C.阶码是否上溢 答:C 4.12

设[X]补=X0.X1……Xn,X必须满足 条件时,X左移一位求2X时,才不会发生溢出。

A.X0.X1=0.0

答:A, B

4.13

B.X0.X1=1.1 C.X0.X1=0.1 D.X0.X1=1.0

设机器字长8位,若机器数DAH为补码,则算术左移一位后为 ,算术右移一

位后为 。

A.B4H 答:A, E

4.14

B.B5H C.F4H D.6DH E.EDH

在计算机内,减法一般用 来实现。

A.二进制减法器 答:C

4.15

B.十进制减法器 C.二进制加法器 D.十进制加法器

设某运算器由一个加法器Σ、两个暂存器A和B(D型边沿寄存器)、一个状态寄存器、

一个二选一多路选择器构成,如图4.29所示。加法器具有F=A、F=B和F=A+B这3种功能;A、B均可接收加法器的输出,A还可以接收外部输入数据D。问: (18) 描述外部数据D传送到暂存器B的过程,写出发送的信号序列。 (19) 如何实现操作A+B→A和A+B→B?写出发送的信号序列。

(20) 可以实现操作D+A→A和D+B→B吗?如果可以,请写出发送的信号序列。

(21) 若A、B均为锁存器(电平触发的寄存器),那么实现操作A+B→A和A+B→B时有问

题吗?为什么?

FLAGSCPFΣ 加法器A→ΣCPAF=AF=BF=A+BB→ΣABCPBSD二选一

4.29 习题4.15图示

答:(1)传送过程:D A,A ∑ B。

控制信号:S=0(选D),CPA, A ∑,F=A,S=1(选∑) (2)A ∑,B ∑,F=A+B,S=1(选∑),CPA A ∑,B ∑,F=A+B,CPB

(3)S=0(选D),CPA, A ∑,B ∑,F=A+B,S=1(选∑),CPA S=0(选D),CPA, A ∑,B ∑,F=A+B,CPB (4)结果不对。加法器会多次运算。 4.16

如果将例4.12中的两条指令修改如下,试写出运算结果及其标志位,并分析各标志的MOV ADD

AL,7FH AL,80H

意义。

答:(AL)=FFH; ZF=0:因为运算结果非零;

CF=0:因为加法运算的最高位没产生进位,

OF=0:因为C1⊕Cf=0,表明有符号数运算发生没溢出, SF=1:因为运算结果的最高位为1,

PF=1:结果中“1”的个数为偶数个,所以PF=1。 4.17

如果将例4.12中的两条指令修改如下,试写出运算结果及其标志位,并分析各标志的MOV SUB

AL,7FH AL,1

意义。

答:(AL)=7EH;

ZF=0:因为运算结果非零;

CF=0:因为加法运算的最高位没产生借位,

OF=0:因为C1⊕Cf=0,表明有符号数运算发生没溢出, SF=0:因为运算结果的最高位为0,

PF=0:结果中“1”的个数为奇数个,所以PF=0。