(2)最大止数.111111J0,1111111111(1-2^)*尸J=(1-盯JX^1L⑶绝对值最小负数400000,1,011111111;—CS^+Z-1o(4)绝对值屋大负数.000000000=-2510|
13.一浮点数,其阶码部分为p位,尾数部分为q位,各包含1
位符号位,均用补码表
示;尾数基数r=2,该浮点数格式所能表示数的上限、下限及非
零的最小正数是多少?
写
数据的机器层次表示出表达式。
解:
上R1(最大止数)=a-2_(t_1>>X22下限(绝对值最大负数)=—1X2^最小E®=2"u"nX2^\/小规恪化止数=旷収旷占二
14.若上题尾数基数r=16,按上述要求写出表达式
解;上限(最大1E数)=(1—ZFTJXW下限〔绝对值址圮负敬尸-ixig"f晟小止数=T>X16_sQ1\最小规榕化止&=16-1
15.某浮点数字长32位,格式如下。
其中阶码部分8位,以
2为底,移码表示;尾数部分一共24位(含1位数符),补码表示。
现有一浮点代码为(8C5A3E00)16,试写出它所表示的十进制真值。
07B9J
阶码
数符
尾数
解:
(8C5A3I:
00>^1000LLCO010110100011111000000000B.
0.10110100011111X^^dOllOlOGfllji.11>=(2887.75>l
16.试将(一0.1101)2用IEEE短浮点数格式表示出来。
解:
0.丄丄01^1-LOLa
符号付=1.
isyni'i—127—1=12GO
1.Cill丄丄丄丄。
TW丄DOOOOODOOOOOODOOQOOO*
17.将下列十进制数转换为IEEE短浮点数:
解;
(1)28.75=11100.11=1.110011X24.
符号0a
阶码=丄站十4=丄3丄f
0J00000Ji•11001100000000000000000,
结果
(2)624=1001110000=1.001110000X2%
符号位=5
阶码=1药一9=136,
0J0001000,00111000000000000000000a结果=44K0000H,
<3)-O.625--O.101--1.O1X2-\
符号位=—
阶码=127-1=126.
1,01111110*010*********000o
结果=BF200000Hs
(4)+0.0„
结果=0000000011
(5)-1000.5=1111101000.^l.lliwioooix?
符号位=1。
阶码=127+9=13亿
1J0001000*11110100010000000000000,
结果=C47A2000Hn
18.将下列IEEE短浮点数转换为十进制数:
1100
0011
0100
(4)
0100
0100
解:
UU,10000001JHOOOOOOOWOCOOOOOOOOO符号位=_L
阶码=1测一1站=二
1」lix^-lllJE=7.5&
所以结果二一了d
(2)0iimio,ooiowooowowooooooo符号位=0*
阶码=12G-127=-I,
1,001X2-1=0J001E=Q.56^a
所以”结果=0・3鬧弱
(3)0JOT00111.00110010000000000000000符号位=h
阶码=135-127=SD
1-00110'01Xr=100110010B=30Ga所以才结果=3o6<>
〔4)040000000,50000000000000000000000符号位=CL
阶码^128-127=1.
1JQX21=1OB=2.
所以,结果=瓷
(D)0,10000010,01000000000000000000000符号位=讥
阶PH13Q-127=3O
1.01X2J=1010B=10fr
所UG结果=1山
(G)0,00000000,00000000000000000000000
阶码和址数都年」;全X结果=伏
19.对下列ASCII码进行译码:
1001001,0100001,1100001,1110
111
1000101,1010000,1010111,0100解;以上asen码分别为i,站wtefp,w.$o
20.以下列形式表示(5382)10
(1)8421码;
(2)余3码;
(3)2421码;(4)二进制数。
解:
(Doioiboilloooooio0
(2)1000011010110101D
(3)1011001111LQ0010.
(4)1010100000110o
21.填写下列代码的奇偶校验位,现设为奇校验:
10100001
00011001
01001110
解:
3个代码的校验位分别是0,0,1。
22.已知下面数据块约定:
横向校验、纵向校验均为奇校验,请
指出至少有多少位出错。
信
血
f£-
Oe
CJL
JtL
-rii
校验位
1
0
0
1
0
1
1一
0
0
0
1
1
0
1
0
1—
1
1
1
0
1
0
0
0
0f
0
1
1
1
0
0
0
0
0f
0
0
1
0
0
J
1
1
1一
0
1
4
T
T
1
校验位1
0
1
0
1
1
1
1
解-经检测
M和個列出错,所以奎少有两拉出错。
23.求有效信息位为01101110的海明校验码觸;P5D8D7DGD5P4D4D3D2P3[)1E2Pl
Pl=DI©D2©D4@D5©D7=0©1©1©0©1=1r=Dl㊉D3㊉D4㊉DC㊉M=
P3=D2㊉D3㊉D4㊉处=1㊉1㊉1©0=1
F4=D5®D6©D7@D8=0©1@1©0=0
P5=DL©D2©D3@D5㊉D&㊉D8二0©1©1©0©1@0=1所EL海明校验码=DLL0dMJdQ!
LL
24.设计算机准备传送的信息是:
1010110010001
111,生成多项式是X5+X2+1,计算校验位,写出CRC码。
解:
牛成客项式.V+.¥-+!
=100101,
“先将准/传送的信总左移5位:
lololioolaooi11100000D
然片1010110010001L1100000-H100101,余数=10011a
苗Lj{]?
(;^=101011001000111110011-
第三章
1.指令长度和机器字长有什么关系?
半字长指令、单字长指令、
双字长指令分别表示什么意思?
解:
指令长度与机器字长没有固定的关系,指令长度可以等于机器字长,也可以大于或小于机器字长。
通常,把指令长度等于机器字长的指令称为单字长指令;指令长度等于半个机器字长的指令称为半字长指令;指令长度等于两个机器字长的指令称为双字长指令。
2.零地址指令的操作数来自哪里?
一地址指令中,另一个操作数
的地址通常可采用什么寻址方式获得?
各举一例说明。
解:
双操作数的零地址指令的操作数来自堆栈的栈顶和次栈顶。
双操作数的一地址指令的另一个操作数通常可采用隐含寻址方式获
得,即将另一操作数预先存放在累加器中。
例如,前述零地址和一地址的加法指令。
3.某机为定长指令字结构,指令长度16位;每个操作数的地址
码长6位,指令分为无操作数、单操作数和双操作数三类。
若双操作数指令已有K种,无操作数指令已有L种,问单操作数指令最多可能有多少种?
上述三类指令各自允许的最大指令条数是多少?
解;—K)X号一占k
叙操作数描令的晨大指令数0-1.
单一撫作散扌錚4的虽人指令数=灯池丁一1【假说収操®数指令仅1蕤*为无操作数措令留岀1十扩展窗仃〉.
无摊作觌脂令的虽大猜警数匕严一严一2\H屮严为及示杲条一地址揩涉占用的満科数土主缶示杲荼单地址皓令占用的编码散a此时灶择作数和单一操件散指令各仅启
1紀
4.设某机为定长指令字结构,
指令长度12位,每个地址码占3
位,试提出一种分配
方案,使该指令系统包含:
4条三地址指令,8条二地址指令,1
80条单地址指令。
斛.4条三地丄止展1令
000XXXTVV7了工
*■甲
0丄丄XKX*1\\ZZZ
8条二HEid:
描令
100000XXXYYY
100丄丄丄KXXYY¥
ISO条单Mil址指令
1O1OOOOOOXXX
Ill丄10OilXXK
5.指令格式同上题,能否构成:
三地址指令4条,单地址指令2
55条,零地址指令64条?
为什么?
解:
[地址搭令4糸
000XXXYYYZZZ
OilXXXY¥YZZZ
单地扯指>255条
100000000XXX
+•1
111111110YYY
只能再扩展岀哼地址桁令1
!
条,所以不能构成达样的描令系统.
6.指令中地址码的位数与直接访问的主存容量和最小寻址单位有什么关系?
66解:
主存容量越大,所需的地址码位数就越长。
对于相同容量来说,最小寻址单位越小,地址码的位数就越长。
7.试比较间接寻址和寄存器间址。
解:
间接寻址方式的有效地址在主存中,操作数也在主存中;寄存器间址方式的有效地址在寄存器中,操作数在主存中。
所以间接寻址比较慢。
8.试比较基址寻址和变址寻址。
解:
基址寻址和变址寻址在形成有效地址时所用的算法是相同
的,但是它们两者实际上是有区别的。
一般来说,变址寻址中变址寄存器提供修改量(可变的),而指令中提供基准值(固定的);基址寻址中基址寄存器提供基准值(固定的),而指令中提供位移量
(可变的)。
这两种寻址方式应用的场合也不同,变址寻址是面向用户的,用于访问字符串、向量和数组等成批数据;而基址寻址面向系统,主要用于逻辑地址和物理地址的变换,用以解决程序在主存中的再定位和扩大寻址空间等问题。
在某些大型机中,基址寄存器只能由特权指令来管理,用户指令无权操作和修改。
9.某机字长为16位,主存容量为64K字,采用单字长单地址指令,共有50条指令。
若有直接寻址、间接寻址、变址寻址、相对寻址四种寻址方式,试设计其指令格式。
解:
操作码6位,寻址方式2位,地址码8位。
10.某机字长为16位,主存容量为64K字,指令格式为单字长单地址,共有64条指令。
试说明:
(1)若只采用直接寻址方式,指令能访问多少主存单元?
(2)为扩充指令的寻址范围,可采用直接/间接寻址方式,若只
增加一位直接/间接标志,指令可寻址范围为多少?
指令直接寻址
的范围为多少?
(3)采用页面寻址方式,若只增加一位Z/C(零页/现行页)标
志,指令寻址范围为多少?
指令直接寻址范围为多少?
(4)采用
(2)、(3)两种方式结合,指令的寻址范围为多
少?
指令直接寻址范围为多少?
解:
因为计算机中共有64条捋令,所以操作码占6位.其余部分先地址码或际志位,
(1)若只采用直接寻址方式*地址码部分为10拉,揩令能访问的主存单元数为驴=nc字.
⑴若采用直接间接寻址方式,将增加r位直接/间接标志•地址码部分为g位,
播令直接寻址的范憎为2'=O.5K字,指習可寻址范国为整个主存字间対=64K字口
(3)若采用页面寻址方式,将增加一位Z/C潯页僦行页烁志,所以指令直接寻址
范围仍为卯=05K字•指令寻址范围仍为2ie=£4K字"
(4)此时将需輕和Zt两个标志位,所以指令直接寻址范围为2*=O.25K字,指令的可寻址范围仍为严=64K字,
11.设某机字长32位,CPU有32个32位的通用寄存器,设计一个能容纳64种操作的单字长指令系统。
(1)如果是存储器间接寻址方式的寄存器-存储器型指令,能直接寻址的最大主存空间是多少?
(2)如果采用通用寄存器作为基址寄存器,能直接寻址的最大主存空间又是多少?
解:
因为计算机中共有64条指令,所以操作码占6位;32个通用寄存器,寄存器编号占5位;其余部分为地址码或标志位。
(1)如果是存储器间接寻址方式的寄存器-存储器型指令,操作码6位,寄存器编号5位,间址标志1位,地址码20位,直接寻址的最大主存空间是仝订字。
(2)如果采用通用寄存器作为基址寄存器,*,能直
接寻址的最大主存空间是力字。
12.已知某小型机字长为16位,其双操作数指令的格式如下:
0567B15
or
【;
A
其中:
OP为操作码,R为通用寄存器地址。
试说明下列各种情况下能访问的最大主存区域有多少机器字?
(1)A为立即数。
(2)A为直接主存单元地址。
(3)A为间接地址(非多重间址)。
(4)A为变址寻址的形式地址,假定变址寄存器为R1(字长为
16位)
解:
(1)1个机器字。
(2)256个机器字。
(3)65536个机器字。
(4)65536个机器字。
13.计算下