计算机组成原理课件计组部分课后习题答案_第1页
计算机组成原理课件计组部分课后习题答案_第2页
计算机组成原理课件计组部分课后习题答案_第3页
计算机组成原理课件计组部分课后习题答案_第4页
计算机组成原理课件计组部分课后习题答案_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Page1

部分习题解

第2章数据的机器层次表示(P49)

1.设机器数的字长8位(含一位符号位),分别写出下列各二进制数的原码、补码和

码:0,0.1000,-0.1111,1101.

真值原码补码

反码

00,00000000,0000000

0,0000000

0.10000.10000000.1000000

0.1000000

0.11110.11110000.1111000

0.1111000

-0.11111.11110001.0001000

1.0000111

3.已知下列数的原码表示,分别写出它们的补码表示:[XI]=0.10100,[X2]=1.10111o

原原

[解][XI]=0.10100,[X2]=1.01001

补补

4.已知下列数的补码表示,分别写出它们的真值:[XI]=0.10100,[X2]=1.10111。

补补

[解]Xl=0.10100,X2=-0.01001

7.设凶=1.AAAAAA,

补123456

(1)若要X>-i/2,A-A要满足什么条件?

16

(2)若要-1/82X2-1/4,A-A要满足什么条件?

16

[解](1)V[-1/2]补=1.100000

X>-l/2的条件是:1.AAAAAA>1.100000

123456

即A(A+A+A+A+A)=1

123456

(2),?[-1/8]=1.111000[-1/4]=1.110000

补补

A-1/82X2-1/4的条件是:

1.AAAAAA<1.111000并且1.AAAAAA>1.110000

123456123

456

即AA(AAAA+A)=1

1234563

简化为:AA(AAA+A)=1

124563

9.某机字长16位,问在下列几种情况下所能表示数值的范围:

(1)无符号整数

(2)用原码表示定点小数

(3)用补码表示定点小数

(4)用原码表示定点整数

(5)用补码表示定点整数

16

[解](1)0WXWQ-1)

-15-15

(2)-(1-2)WXW(l-2)

-15

(3)-lWXW(l-2)

(4)-(1-2-15-15

)WX<(2-1)

15-15

(5)-2WXW(2-1)

12.某浮点数字长16位,其中阶码部分6位(含一位阶符),移码表示,以2为底;

数部分10位(含1位数符,位于尾数最高位),补码表示,规格化。分别写出下列各题的二

进制代码与十进制真值。

(1)非零最小正数

(2)最大正数

(3)绝对值最小负数

(4)绝对值最大负数

5

[解](1)非零最小正数:000000,0.100000000;2-1

-2-33

X2=2o

5

(2)最大正数:111111,0.111111111;(1-2-9

2-1-931

)x2=(1-2)x2

5

-1-9-2

(3)绝对值最小负数:000000,1.011111111;-(2+2)X2。

2-131

(4)绝对值最大负数:111111,1.000000000;-1X2

-2。

15.某浮点数字长32位,格式如下。其中阶码部分8位,以2为底,移码表示;

尾数

部分一共24位(含1位数符),补码表示•现有一浮点代码为(8C5A3E00),试写出它所

16

示的十进制真值。

0789

31

阶码数符尾数

[解](8C5A3E00)=100()1100010110100011111000000000B

16

12

真值:+0.10110100011111X2=(101101000111.11)=(2887.75)

210

17.将下列十进制数转换为IEEE短浮点数:

(1)28.75;

(3)-0.625;

(5)-1000.5«

[M](1)28.75=11100.11=1.110011X24

符号位=0

阶码=127+4=131

IEEE短浮点数格式:0,10000011,11001100000000000000000

即41E60000H

(3)-0.625=0.101=-1.01*2-1

符号位=1

阶码=127-1=126

IEEE短浮点数格式:1,01111110,01000000000000000000000

即BF200000H

2

(5)-1000.5=1111101000.1=1.1111010001*29

符号位=1

阶码=127+9=136

IEEE短浮点数格式:1』0001000,11110100010000000000000

即C47A2000H

18.将下列IEEE短浮点数转换为十进制数:

(1)11000000111100000000000000000000

(3)01000011100110010000000000000000

[解](1)1,10000001,11100000000000000000000

符号位=1

阶码=129-127=2

2

1.111*2=111.1B=7.5

;.结果=-7.5

(3)0,10000111,00110010000000000000000

符号位=0

阶码=135-127=8

8

1.0011001*2=100110010B=306»

...结果=306。

20.以下列形式表示(5382)。

10

(1)8421码;(2)余3码:(3)2421码;(4)

二进制码

[解](1)0101001110000010;

(2)1000011010110101;

(3)1011001111100010;

(4)1010100000110o

21.填写下列代码的奇偶校验位,现设为奇校验:

10100001

00011001

01001110

[解]3个代码的校验位分别是;0,0,lo

补充题2-1.已知[X]=3EH」Y]=DCH,求:[2X],[2YJ,[1/2XJ,

[1/4Y],

补补补补

补补

[X],[Y]>[X],[Y],[X][Y]

原原反反移移

[解][2X]=7CH;[X/2]=1FH;[X]=3EH;[X]=3EH;[X]=BEH

补补原反移

[2Y]=B8H;[Y/4]=F7H;[Y]=A4H;[Y]=DBH;[Y]=5CH

补补原反移

3

第3章指令系统(P78)

3.某机为定长指令字结构,指令长度为16位,每个操作数的地址码长6位,指令分

无操作数、单操作数和双操作数三类。若双操作数指令已有K种,无操作数指令已有L种,

为单操作数最多可能有多少种?上述三类指令各自允许的最大指令条数是多少?

[解](1)设单操作数指令有X条,

4664位6位

6位

贝U((2-K)X2-X)X2>=L

466

即,XW(2-K)X2-(L/2)

,最多还可以设计出单操作数指令?(2466

-K)X2-(L/2)?条。

(2)双操作数指令的最大指令数:24-1;

6

单操作数指令的最大指令数:15X2-1

(假定双操作数指令仅1条,为无操作数指令留出1个扩展窗口);

无操作数指令的最大指令数:216-212-26

(其中212为表示某条二地址指令占用的编码数,26为表示某条单

地址指令占

用的编码数,此时双操作数和单操作数指令各仅有1条)

4.设某机为定长指令字结构,指令长度为12位,每个地址码占3位,试提出一种分

方案,使该指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。

[解J4条三地址指令:000XXXYYYZZZ

011XXXYYYZZZ

8条二地址指令:100000XXXYYY

100111XXXYYY

180条单地址指令:101000000XXX

111110011XXX

5.指令格式同题4,能否构成:三地址指令4条,单地址指令255条,零地址指令

64

条?为什么?

[解]不能构成这样的指令系统。

这是因为,如果三地址指令有4条,单地址指令有255条,则零地址指令的条数最多

能有:[(2363

-4)x2-255]x2=8

3位3位3位3位

3

三地址指令:可从2种编码中选4种,剩

4个编码

6

单地址指令:可从扩展出4X2个编码种

选255种,剩1个编码

3

零地址指令:剩下1个编码与3位地址只

能扩展出1X2个编码

4

7.试比较间接寻址和寄存器间址。

[解]间接寻址方式其有效地址在内存中,操作数也在内存中;寄存器寻址方式其有效

地址在CPU内的寄存器中,操作数在内存中。所以前者寻找操作数较慢。

补充题3-1.根据操作数所在的位置,指出其寻址方式的名称。

(1)操作数在寄存器中

(2)操作数的地址在通用寄存器中

(3)操作数在指令中

(4)操作数的地址在指令中

(5)操作数地址的地址在指令中

(6)操作数的地址为寄存器内容与位移量之和(寄存器分别为基址寄存器,变址寄存

和程序计数器)

(7)操作数为某二进制位

(8)操作数为栈顶元素

[解]各小题对应寻址方式的名称是:

(1)寄存器寻址(2)寄存器间址(3)立即寻址(4)直接寻址

(5)间接寻址(6)分别为基址、变址和自相对寻址

(7)位寻址(8)堆栈寻址

10.某机字长为16位,主存容量为64K字,指令格式为单字长单地址,共有64条指

令。

试说明:

(1)若只采用直接寻址方式,指令能访问多少主存单元?

(2)为扩充指令的寻址范围,可采用直接/间接寻址方式,若只增加一位直接/间接标志,

指令可寻址范围为多少?指令直接寻址的范围为多少?

(3)采用页面寻址方式,若只增加一位Z/C(零页/现行页)标志,指令寻址范围为多

少?

指令直接寻址范围为多少?

(4)采用(2)、(3)两种方式结合,指令的寻址范围为多少?指令直接寻址范围为多少?

[解]该计算机共有64条指令,所以指令的操作码需要占6位,其余10位地址码字段。

(1)只采用直接寻址方式时,不需要标识寻址方式,地址码字段的10位全都作为直

地址,所以指令能访问主存单元数为1K字(0-210-1单元)。

6位10位

OPA

(2)采用直接/间接寻址方式时,需从10位的地址字段中留出1位来作“直接/间接”

寻址的标志,余下的9位为形式地址。

6位1位9位

OP@A9位地址(直接寻址)

9位地址的地址一16位地址

(间址)

9

16

...指令直接寻址的范围为0〜2-1号存储单元,间接寻址的范围为0-2-1号存储单

元(存储字长即操作数地址的位数)。

(3)采用页面寻址方式时,也需从10位的地址字段中留出1位来作“Z/C”寻址的标

余下的9位为形式地址。

6位1位9位

OPZ/CA9位零页地址

(零页寻址)

9位当前页地址(当前

页寻址)

...指令的零页寻址的范围为0-29-1号存储单元,当前页寻址的范围也指令所在页

9

关,可访问当前页内的0〜2-1号存储单元。由于“当前页”可以是64K字主存的任意一

页,

所以指令可能访问到的地址是0〜216-1号存储单元。

(4)需从10位的地址字段中留出2位来标志“直接/间接”和“Z/C”,余下8位为形

地址。

6位1位1位8位

OPZ/C@A

指令直接寻址的范围为028

16

-1号存储单兀,间接寻址的范围为0〜2-1

号存储单

元(存储字长即操作数地址的位数)。

12.已知某小型机字长为16位,其双操作数指令的格式如下:

0567815

OPRA

其中:0P为操作码,R为通用寄存器地址。试说明下列情况下能访问的最大主存区域有多

机器字?

(1)A为立即数

(2)A为直接主存单元地址

(3)A为间接地址(非多重间址)

(4)A为变址寻址的形式地址,假定变址寄存器为R1(字长为16位)

[解](1)1个机器字(即指令字);

(2)256个机器字(可直接寻址的地址有8位);

(3)65536个机器字

(指令的地址字段给出的操作数地址的地址是8位,从内存取出的操作数

地址是

16位,与字长相同)

(4)65536个机器字

(变址寄存器16位,与8位位移量相加并取16位模,所得到的地址还

是16位)

6

第4章数值的机器运算(P129)

2.某加法器采用组内并行,组间并行的进位链,4位一组,写出进位信号C逻辑表达式。

6

[解]组间并行的进位链,产生的最低一组的进位输出为:

C=G*+P*C(其中:G*=G+PG+PPG+PPPG;P*=PPP

P)

411014434324321

14321

然后在组内产生进位信号C6:

C=G+PC=G+PG+PPC

6665665654

4.己知X和Y,使用它们的变形补码计算出X+Y,并指出结果是否溢出。

(1)X=0.11011,Y=0.11111

(2)X=0.11011,Y=-0.10101

(3)X=-0.10110,Y=-0.00001

(4)X=-0.11011,Y=0.11110

[解]

(I)[X]=0.11011,[Y]=0.11111

补补

00.11011[X]补

+00.11111[Y]补

01.11010[X+Y]补结果正

溢出!

(2)[X]=0.11011,[Y]=1.01011

补补

00.11011[X]补

+11.01011[Y]补

00.00110[X+Y]补结果不

溢出!

X+Y=0.001I0

(3)[X]=1.01010,[Y]=l.lllll

补补

11.01010[X]补

+11.11111[Y]补

11.01001[X+Y]补结果不

溢出!

X+Y=-0.10111

(4)[X]=1.00101,[Y]=0.11110

补补

11.00101[X]补

+00.11110[Y]补

00.00011[X+Y]补结果不

溢出!

X+Y=0.000ll

5.已知X和Y,使用它们的变形补码计算出X-Y,并指出结果是否溢出。

(1)X=0.11011,Y=-0.11lll

(2)X=O.IO111,Y=0.11011

(3)X=-0.11011,Y=-0.10()11

(4)X=-0.10110,Y=-0.00001

7

[解]

(1)[X]=0.11011,[Y]=1.00001,[-Y]=0.11111

补补补

00.11011[X]补

+00.11111[-Y]补

01.11010[X-Y]补

结果正溢出!

(2)[X]=0.10111,[Y]=0.11011,[-Y]=1.00101

补补补

00.10111[X]补

+11.00101[-Y]补

11.11100[X-Y]补

结果不溢出!

X-Y=U.11100

(3)[X]=0.11011,[Y]=1.01101,[-Y]=0.10011

补补补

00.11011[X]补

+00.10011[-Y]补

01.01110[X-YJ补

结果正溢出!

(4)[X]=1.01010,[Y]=l.11111,[-Y]=0.00001

补补补

11.01010[X]补

+00.00001[-Y]补

11.01011[X-Y]补

结果不溢出!

X-Y=-0.10101

6.已知:X=0.1011,Y=-0.0l01

求:[X⑵,[X/4],[-X]4Y/2],[Y/4],l-YJ,[2YJ

补补补补补补补

[解]由[X]=0.1011,[Y]=1.1011得:

补补

[X/2]=0,0101,[X/4]=0.0010,[-X]=1.0101

补补补

[Y⑵=1.1101,[Y/4]=0.0010,[-Y]=0.0101,[2Y]=1.0110

补补补

思考4-1.在全加器里进位输出表达式C=AB+(A㊉B)C

为什么可以用下式替代:

i-1

C=AB+(A+B)C9

iii-1

答:由真值表可得到:(A+B)=(AeB)+AB

ii

C=AB+(A+B)C=AB+[(AeB)+AB]C

:.iiii-1iiiiiii-1

AB+(A㊉B)C+ABC

iiiii-l

=AB+(A㊉B)C

ii

思考4-2.先行进位主要是解决什么问题,采用什么设计思路?

答:先行进位解决的问题是加法进位的传递速度问题。基本设计原理是:让各位的进

与低位的进位无关,仅与两个参加操作的数有关。由于每位的操作数都是同时给出的,各进

位信号几乎同时产生,和数也随之产生,所以先行进位可以提高进位的传递速度,从而提高

加法器的运算速度。

8

8.分别用原码乘法和补码乘法计算XXY.

(1)X=O.11O11,Y=-O.lllll

(2)X=-0.11010,Y=-0.01110

[解]

原码乘法:

(1)|X|=0.11011-B,|Y|=0.11111-C,0-A

Ac说明

00.000000.11111

+|X|00.11011C5=l,+|X|

00.11011

00.01101101111部分积右移1位

+|X|00.11011C5=l,+|X|

01.01000

00.10100010111部分积右移1位

+|X|00.11011C5=l,+|X|

01.01111

00.10111101011部分积右移1位

+|X|00.11011C5=l,+|X|

01.10010

00.11001010101部分积右移1位

+|X|00.11011C5=l,+|X|

01.10100

00.11010001010部分积右移1位

所以,|XXY|=0.1101000101

XxY=-0.1101000101

(2)|X|=0.11010-B,|Y|=0.01110C,0-A

A寄存器C寄存器说明

00.000000.01110

+000.00000C5=0,+0

00.00000

00.00000000111部分积右移1位

+1X100.11010C5=l,+|X|

00.11010

00.01101000011部分积右移1位

+|X|00.11010C5=l,+|X|

01.00111

00.10011100001部分积右移1位

+|X|00.11010C5=l,+|X|

01.01101

00.10110110000部分积右移1位

+000.00000C5=0,+0

00.10110

00.01011011000部分积右移1位

所以,|XXY|=0.0以110X00

XxY=-0.0101101100

9

补码乘法:

(1)[X]=0.11011-B,[Y]=1.00001fC,0一A

补补

[-X]=1.00101附加

A寄存器C寄存器

说明

00.000001.000010

+[-X]11.00101

CC=10,+[-X]

56补

11.00101

11.100101100001

部分积右移1位

+IX]00.11011

CC=01,+[X]

56补

00.01101

00.001101110000

部分积右移1位

+000.00000

cc=oo,+0

56

00.00110

00.000110111000

部分积右移1位

+000.00000

cc=oo,+0

56

00.00011

00.000011011100

部分积右移1位

+000.00000

CC=00,+0

56

00.00001

00.000001101110

部分积右移1位

+L-X]11.00101

CC=10,+[-X]

56补

11.00101

所以,[XXY]补=1.0010111011

XxY=-0.1101000101

(2)[X]补=1.00110fB,[Y]补=1.10010-*C,OfA

[-X]#=0.11010附加

A寄存器c寄存器

说明

00.000001.100100

+000.00000

CC=00,+0

56

00.00000

00.0000()0110010

部分积右移1位

+[-X]00.11010

CC=10,+[-X]

56补

00.11010

00.011010011001

部分积右移1位

+IXJ11.00110

CC=01,+[X]

56补

11.10011

11.110011001100

部分积右移1位

+000.00000

CC=00,+0

56

11.11001

11.111001100110

部分积右移1位

4-[-X]00.11010

CC=10,+[-X]

56补

00.10110

00.010110110011

部分积右移1位

+000.00000

CC=11,+0

56

00.01011

所以,[XXY]补=0.0101101100

XxY=0.0101101100

10

10.分别用原码和补码加减交替法计算X/Y。

(2)X=-0.10101,Y=0.11011

(4)X=-0.10110,Y=-0.11011

[解]

原码除法:

(2)|X|=00.10101-A,|Y|=00.11011-B,0-C

[|Y|]变补=11.00101

A寄存器C寄存器

AC说明

00.101010.00000

+[|Y|]变补11.00101-|Y|

11.110100.00000余数为负,商0

―11.10100左移一位

+|Y|00.11011+IYI

00.011110.00001余数为正,商1

—00.11110左移一位

+[|Y|]变补11.00101-|Y|

00.000110.00011余数为正,商1

—00.00110左移一位

+[|Y|]变补11.00101-|Y|

11.010110.00110余数为负,商0

―10.10110左移一位

+IYI00.11011+|Y|

11.100010.01100余数为负,商0

―11.00010左移一位

+|Y|00.11011+|Y|

11.111010.11000余数为负,商0

+|Y|00.11011+|Y|恢复余数

00.11000

商符:Qs=Xs㊉Ys=1㊉0=1

・••商=-0.11000

X/Y=-[0.11000+(0.11000*2-5)/0.11011]

(中括号内余数项的分子和分母都取正)

(4)X=-0.10110,Y=-0.11011

1X1=00.10110^A,|Y|=00.11011^B,0-C

[|Y|]变补=11.00101

A寄存器c寄存器

Ac说明

00.101100.00000

+HY|]变补11.00101-|Y|

11.110110.00000余数为负,商0

V-11.10110左移一位

+|Y|00.11011+|Y|

00.100010.00001余数为正,商1

V-01.00010左移一位

+[|Y|]变补11.00101-|Y|

00.001110.00011余数为正,商1

00.01110左移一位

+[|Y|]变补11.00101

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论