计组补充习题 3 - 图文

2020-04-14 00:39

第3章 运算方法和运算部件

1.设机器字长32位,定点表示,尾数31位,数符1位,问: (1)定点原码整数表示时,最大正数是多少?最大负数是多少? (2)定点原码小数表示时,最大正数是多少?最大负数是多少? 解:(1)定点原码整数表示:

最大正数: 0 111 111 111 111 111 111 111 111 111 1111

数值 = (231 – 1)

最大负数: 1 000 000 000 000 000 000 000 000 000 0001 数值 = -1

(2)定点原码小数表示:(机器数同上)

最大正数值 = 1 – 2-31 最大负数值 = – 2-31

2.已知 x = - 0.01111 ,y = +0.11001,

求 [ x ]补 ,[ -x ]补 ,[ y ]补 ,[ -y ]补 ,x + y = ? ,x – y = ? 解:[ x ]原 = 1.01111 [ x ]补 = 1.10001 所以 :[ -x ]补 = 0.01111 [ y ]原 = 0.11001 [ y ]补 = 0.11001 所以 :[ -y ]补 = 1.00111

[ x ]补 11.10001 [ x ]补 11.10001 + [ y ]补 00.11001 + [ -y ]补 11.00111 [ x + y ]补 00.01010 [ x - y ]补 10.11000

所以: x + y = +0.01010 因为符号位相异,结果发生溢出 3.已知X=2010×0.11011011,Y=2100×(-0.10101100),求X+Y。

解:为了便于直观理解,假设两数均以补码表示,阶码采用双符号位,尾数采用单符号位,则它们的浮点表示分别为:

[ X ]浮 = 00010 , 0.11011011 [ Y ]浮 = 00100 , 1.01010100 (1) 求阶差并对阶:

ΔE = Ex – Ey = [ Ex]补 + [ - Ey]补 = 00010 + 11100 = 11110 即ΔE为 –2,x的阶码小,应使Mx 右移2位,Ex加2, [ X ]浮 = 00010 , 0.11011011 (11)

其中(11)表示Mx 右移2位后移出的最低两位数。 (2) 尾数和

0. 0 0 1 1 0 1 1 0 (11) 1. 0 1 0 1 0 1 0 0

1. 1 0 0 0 1 0 1 0 (11)

(3) 规格化处理

尾数运算结果的符号位与最高数值位为同值,应执行左规处理,结果为1.00010101 (10),阶码为00 011 。

(4) 舍入处理

采用0舍1入法处理,则有

1. 0 0 0 1 0 1 0 1

+ 1

1. 0 0 0 1 0 1 1 0

(5) 判溢出

阶码符号位为00 ,不溢出,故得最终结果为

011

x + y = 2× (-0.11101010) 4.设有两个浮点数x=2Ex×Sx,y=2Ey×Sy,Ex=(-10)2,Sx=(+0.1001)2,Ey=(+10)2,Sy=(+0.1011)2。若尾数4位,数符1位,阶码2位,阶符1位,求x+y=?并写出运算步骤及结果。 解:因为X+Y=2Ex×(Sx+Sy) (Ex=Ey),所以求X+Y要经过对阶、尾数求和及规格化等步骤。

(1) 对阶: △J=Ex-EY=(-10)(+10)(-100)则Sx右移4位,Ex+(100)2=(10)2=EY。2-2=2 所以Ex

()

SX右移四位后SX=0.00001001,经过舍入后SX=0001,经过对阶、舍入后,X=2102×(0.0001)2

(2) 尾数求和: SX+SY

0. 0001(SX)

+ 0. 1011(SY) SX+SY=0. 1100 结果为规格化数。所以:

X+Y=2(10)2×(SX+SY)=2(10)2(0.1100)2=(11.00)2

5.设[x]补 =x0.x1x2?xn 。 求证:x = -x0 +证明:

当 x ≥ 0 时,x0 = 0 ,

[x]补 = 0.x1x2…xn =

?i?1nxi2

-i

?i?1n xi 2i =x

-

当 x < 0 时,x0= 1 ,

[x]补 = 1.x1x2…xn = 2+x 所以

x= 1.x1x2…xn - 2 = -1 + 0.x1x2…xn = -1 +

?i?1n xi 2i

-

综合上述两种情况,可得出:x = -x0 +

j1

?i?1j2

nxi2 (补码与真值的关系)

-i

6.设有两个浮点数 N1 = 2 × S1 , N2 = 2 × S2 ,其中阶码2位,阶符1位,尾数四位,数符一位。设 :j1 = (-10 )2 ,S1 = ( +0.1001)2

j2 = (+10 )2 ,S2 = ( +0.1011)2

求:N1 ×N2 ,写出运算步骤及结果,积的尾数占4位,要规格化结果,用原码阵列乘法器求尾数之积。 解:(1)浮点乘法规则:

j1j2(j1j2)

N1 ×N2 =( 2 ×S1)× (2 × S2) = 2+ ×(S1×S2)

(2)阶码求和: j1 + j2 = 0

(3) 尾数相乘:

被乘数S1 =0.1001,令乘数S2 = 0.1011,尾数绝对值相乘得积的绝对值,积的符号位 =

0

0⊕0 = 0。按无符号阵乘法器运算得:N1 ×N2 = 2×0.01100011 (4)尾数规格化、舍入(尾数四位)

(-01)

N1 ×N2 = (+ 0.01100011)2 = (+0.1100)2×22 7.求证: - [y]补 = +[-y]补 解:因为 [x]补 + [y]补 =[x+y]补 令 x=-y 代入上式,则有:

[-y]补 + [y]补 =[-y+y]补 = [0]补 = 0 所以 [-y]补 = -[y]补 8.设[x]补=x0.x1x2…xn。求证:

[x]补=2x0+x,其中x0=

?0,1?x??01,0?x??1

证明:当1 > x ≥0时,即x为正小数,则 1 > [ x ]补 = x ≥0 因为正数的补码等于正数本身,所以 1 > x 0.x1x2?xn ≥0 , x0 = 0

当1 > x > - 1时,即x为负小数,根据补码定义有: 2 > [ x ]补 = 2 + x > 1 (mod2) 即 2 > x0.x1x2?xn > 1 ,xn= 1 所以 正数: 符号位 x0 = 0 负数: 符号位 x0 = 1{

若 1 > x≥0 , x0 = 0,则 [ x ]补 = 2 x0 + x = x 若 - 1 < x < 0, x0 = 1,则 [ x ]补 = 2 x0 + x = 2 + x

1,0?x??1 11119.已知:x= 0.1011,y = - 0.0101,求 :[ x]补,[ x]补,[ - x ]补,[y]补,[y]补,[ -

2424y ]补 。

解: [ x ]补 = 0.1011 , [ y ]补 = 1.1011 [

所以有 [ x ]补 = 2 x0 + x ,x0 =

?0,1?x??011x ]补 = 0.01011 , [x ]补 = 1.11011 22 [

11x ]补 = 0.001011 ,[ x ]补 = 1.111011 44 [ - x ]补 = 1.0101 , [ - x ]补 =0.0101

10..由S,E,M三个域组成的一个32位二进制字所表示的非零规格化浮点数x,其值表示为 :

x = ( -1 )S ×( 1.M )× 2E – 128

问:其所表示的规格化的最大正数、 最小正数、 最大负数、 最小负数是多少

解:(1)最大正数

127

x = [ 1 +(1 – 2-23 )] ×2

0 00 000 000 000 000 000 000 000 000 00 (2)最小正数

-128 x = 1.0×2

1 00 000 000 000 000 000 000 000 000 00 (3)最大负数

-128 x = -1.0×2

1 11 111 111 111 111 111 111 111 111 11 (4)最小负数

127 x = - [ 1 + (1 – 2-32 )] ×2

11.设[X]补=01111,[Y]补=11101,用带求补器的补码阵列乘法器求出乘积 X·Y=?并用十进制数乘法验证。

解:设最高位为符号位,输入数据为[ x ]补 = 01111 [ y ]原 = 11101

算前求补器输出后: x = 1111 y = 1101 1 1 1 1 × 1 1 0 1 1 1 1 1

0 0 0 0 乘积符号位运算: 1 1 1 1 x0⊕y0 = 0⊕1 = 1 + 1 1 1 1

1 1 0 0 0 0 1 1

算后求补级输出为00111101,加上乘积符号位1,最后得补码乘积值为 10011101 。

利用补码与真值的换算公式,补码二进制数的真值是:

854320

x×y = -1×2 + 1×2 + 1×2 + 1×2 + 1×2 + 1×2 = -195

十进制数乘法验证: x×y = (+15)×(-13)= -195

12. 将十进制数20.59375转换成32位浮点数的二进制格式来存储。 解:先将十进制数转换为二进制数:

(20.59375)10=(10100.10011)2 然后移动小数点,使其在1,2位之间

10100.10011=1.0010011×24 ,e =4

于是得到 S=0, E = 4+127 = 131 M=01001011 最后得到32位浮点数的二进制格式为:

0100 0001 01010 0100 1100 0000 0000 0000 =(41A4C000)16

第4章 主存储器

1. 设存储器容量为32字,字长64位,模块数m = 4,分别用顺序方式和交叉方式进行组织。存储周期T = 200ns,数据总线宽度为64位,总线周期τ = 50ns .问顺序存储器和交叉存储器的带宽各是多少?

解: 信息总量: q = 64位 ×4 =256位

顺序存储器和交叉存储器读出4个字的时间分别是:

t2 = m T = 4×200ns =8×10–7 (s)

t1 = T + (m – 1)τ = 200 + 3×50 = 3.5 ×10–7 (s) 顺序存储器带宽是:

W1 = q / t2 = 32 ×107 (位/ S) 交叉存储器带宽是:

W2 = q / t1 = 73 ×107 (位/ S)

2.某机字长32位,常规设计的存储空间≤32M ,若将存储空间扩至256M,请提出一种可能方案。

解:可采用多体交叉存取方案,即将主存分成8个相互独立、容量相同的模块M0,M1,M2,?M7,每个模块32M×32位。它各自具备一套地址寄存器、数据缓冲寄存器,各自以同等的方式与CPU传递信息,其组成结构如图B3.3:

图B3.3

CPU访问8个存贮模块,可采用两种方式:一种是在一个存取周期内,同时访问8个存贮模块,由存贮器控制它们分时使用总线进行信息传递。另一种方式是:在存取周期内分时访问每个体,即经过1 / 8存取周期就访问一个模块。这样,对每个模块而言,从CPU给出访存操作命令直到读出信息,仍然是一个存取周期时间。而对CPU来说,它可以在一个存取周期内连续访问8个存贮体,各体的读写过程将重叠进行。

3. 图B5.1所示为存贮器的地址空间分布图和存贮器的地址译码电路,后者可在A组跨接端和B组跨接端之间分别进行接线。74LS139是 2 :4译码器,使能端G接地表示译码器处于正常译码状态。


计组补充习题 3 - 图文.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:数学作业笔录

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: