计算机组成原理第六章答案.docx

上传人:b****5 文档编号:6744834 上传时间:2023-01-09 格式:DOCX 页数:11 大小:162.47KB
下载 相关 举报
计算机组成原理第六章答案.docx_第1页
第1页 / 共11页
计算机组成原理第六章答案.docx_第2页
第2页 / 共11页
计算机组成原理第六章答案.docx_第3页
第3页 / 共11页
计算机组成原理第六章答案.docx_第4页
第4页 / 共11页
计算机组成原理第六章答案.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

计算机组成原理第六章答案.docx

《计算机组成原理第六章答案.docx》由会员分享,可在线阅读,更多相关《计算机组成原理第六章答案.docx(11页珍藏版)》请在冰豆网上搜索。

计算机组成原理第六章答案.docx

计算机组成原理第六章答案

1.写出下列各数的原码、反码、补码、移码(用8位二进制表示),其中MSB是最高位(符号位),LSB是最低位。

如果是小数,则小数点在MSB之后;如果是整数,则小数点在LSB之后。

   

(1)-59/64       

(2)27/128       (3)-127/128     (4)用小数表示-1

   (5)用整数表示-1 (6)-127         (7)35           (8)-128

   2.设[x]补=x0.x1x2x3x4,其中xi取0或1,若要使x>-0.5,则x0、x1、x2、x3、x4的取值应满足什么条件?

   3.若32位定点小数的最高位为符号位,用补码表示,则所能表示的最大正数为     ,最小正数为     ,最大负数为     ,最小负数为     ;若32位定点整数的最高位为符号位,用原码表示,则所能表示的最大正数为     ,最小正数为     ,最大负数为     ,最小负数为     。

   4.若机器字长为32位,在浮点数据表示时阶符占1位,阶码值占7位,数符占1位,尾数值占23位,阶码用移码表示,尾数用原码表示,则该浮点数格式所能表示的最大正数为     ,最小正数为     ,最大负数为     ,最小负数为     。

   5.某机浮点数字长为18位,格式如图2.35所示,已知阶码(含阶符)用补码表示,尾数(含数符)用原码表示。

   

(1)将(-1027)10表示成规格化浮点数;

   

(2)浮点数(0EF43)16是否是规格化浮点数?

它所表示的真值是多少?

图2.35 浮点数的表示格式

   6.有一个字长为32位的浮点数,格式如图2.36所示,已知数符占1位;阶码占8位,用移码表示;尾数值占23位,尾数用补码表示。

图2.36 浮点数的表示格式

   请写出:

   

(1)所能表示的最大正数;

   

(2)所能表示的最小负数;

   (3)规格化数所能表示的数的范围。

   7.若浮点数x的IEEE754标准的32位存储格式为(8FEFC000)16,求其浮点数的十进制数值。

   8.将数(-7.28125)10转换成IEEE754标准的32位浮点数的二进制存储格式。

   9.已知x=-0.x1x2…xn,求证:

[x]补=

+0.00…01。

   10.已知[x]补=1.x1x2x3x4x5x6,求证:

[x]原=

+0.000001。

   11.已知x和y,用变形补码计算x+y,同时指出运算结果是否发生溢出。

   

(1)x=0.11011     y=-0.10101

   

(2)x=-10110      y=-00011

   12.已知x和y,用变形补码计算x-y,同时指出运算结果是否发生溢出。

   

(1)x=0.10111     y=0.11011

   

(2)x=11011       y=-10011

   13.已知[x]补=1.1011000,[y]补=1.0100110,用变形补码计算2[x]补+1/2[y]补=?

,同时指出结果是否发生溢出。

   14.已知x和y,用原码运算规则计算x+y,同时指出运算结果是否发生溢出。

   

(1)x=0.1011,y=-0.1110

   

(2)x=-1101,y=-1010

   15.已知x和y,用原码运算规则计算x-y,同时指出运算结果是否发生溢出。

   

(1)x=0.1101,y=0.0001

   

(2)x=0011,y=1110

   16.已知x和y,用移码运算方法计算x+y,同时指出运算结果是否发生溢出。

   

(1)x=-1001,y=1101

   

(2)x=1101,y=1011

   17.已知x和y,用移码运算方法计算x-y,同时指出运算结果是否发生溢出。

   

(1)x=1011,y=-0010

   

(2)x=-1101,y=-1010

   18.余3码编码的十进制加法规则如下:

两个一位十进制数的余3码相加,如结果无进位,则从和数中减去3(加上1101);如结果有进位,则和数中加上3(加上0011),即得和数的余3码。

试设计余3码编码的十进制加法器单元电路。

   19.已知x和y,分别用原码一位乘法和补码一位乘法计算x×y。

   

(1)x=0.10111     y=-0.10011

   

(2)x=-11011      y=-11111

   20.已知x和y,分别用带求补器的原码阵列乘法器、带求补器的补码阵列乘法器和直接补码阵列乘法器计算x×y。

   

(1)x=0.10111     y=-0.10011

   

(2)x=-11011      y=-11111

   21.已知x和y,分别用原码加减交替法和补码加减交替法计算x÷y。

   

(1)x=0.10011     y=-0.11011

   

(2)x=-1000100101 y=-11101

   22.已知x和y,用原码阵列除法器计算x÷y。

   

(1)x=0.10011     y=-0.11011

   

(2)x=-1000100000 y=-11101

   23.设机器字长为8位(含一位符号位),若x=46,y=-46,分别写出x、y的原码、补码和反码表示的机器数在左移一位、左移两位、右移一位和右移两位后的机器数及对应的真值。

   24.某加法器进位链小组信号为C4C3C2C1,最低位来的进位信号为C0,请分别按下述两种方法写出C4C3C2C1的逻辑表达式:

   

(1)串行进位方式;

   

(2)并行进位方式。

   25.用74181和74182设计如下三种方案的64位ALU。

   

(1)组间串行进位方式;

   

(2)两级组间并行进位方式;

   (3)三级组间并行进位方式。

   26.设浮点数的表示格式中阶码占3位,尾数占6位(都不包括符号位)。

阶码和尾数均采用含双符号位的补码表示,运算结果的尾数取单字长(含符号位共7位),舍入规则用“0舍1入”法,用浮点运算方法计算x+y、x-y。

   

(1)x=2-011×(0.100101)     y=2-010×(-0.011110)

   

(2)x=2-101×(-0.010110)     y=2-100×(0.010110)

   27.设浮点数的表示格式中阶码占3位,尾数占6位(都不包括符号位),阶码采用双符号位的补码表示,尾数用单符号位的补码表示。

要求用直接补码阵列乘法完成尾数乘法运算,运算结果的尾数取单字长(含符号位共7位),舍入规则用“0舍1入”法,用浮点运算方法计算x×y。

   

(1)x=2011×(0.110100)     y=2-100×(-0.100100)

   

(2)x=2-011×(-0.100111)     y=2101×(-0.101011)

   28.设浮点数的表示格式中阶码占3位,尾数占6位(都不包括符号位),阶码采用双符号位的补码表示,尾数用单符号位的原码表示。

要求用原码阵列除法完成尾数除法运算,运算结果的尾数取单字长(含符号位共7位),舍入规则用“0舍1入”法,用浮点运算方法计算x÷y。

   

(1)x=2-010×(0.011010)     y=2-111×(-0.111001)

   

(2)x=2011×(-0.101110)     y=2101×(-0.111011)

   29.定点补码加减法运算中,产生溢出的条件是什么?

溢出判断的方法有哪几种?

如果是浮点加减运算,产生溢出的条件又是什么?

   30.设有4个数:

00001111、11110000、00000000、11111111,请问答:

   

(1)其码距为多少?

最多能纠正或发现多少位错?

如果出现数据00011111,应纠正成什么数?

当已经知道出错位时如何纠正?

   

(2)如果再加上2个数00110000,11001111(共6个数),其码距是多少?

能纠正或发现多少位错?

   31.如果采用偶校验,下述两个数据的校验位的值是什么?

   

(1)0101010     

(2)0011011

   32.设有16个信息位,如果采用海明校验,至少需要设置多少个校验位?

应放在哪些位置上?

   33.写出下列4位信息码的CRC编码,生成多项式为G(x)=x3+x2+1。

   

(1)1000

   

(2)1111

   (3)0001

   (4)0000

   34.当从磁盘中读取数据时,已知生成多项式G(x)=x3+x2+1,数据的CRC码为1110110,试通过计算判断读出的数据是否正确?

   35.有一个7位代码的全部码字为:

       a:

0000000   b:

0001011   c:

0010110   d:

0011101

       e:

0100111   f:

0101100   g:

0110001   h:

0111010

       i:

1000101   j:

1001110   k:

1010011   l:

1011000

       m:

1100010   n:

1101001   o:

1110100   p:

1111111

   

(1)求这个代码的码距;

   

(2)这个代码是不是CRC码。

参考答案

 1.数的各种机器码表示见附表2.1。

附表2.1 数的各种机器码表示

   2.应满足的条件是:

①x0=0;②当x0=1时,x1=1且x2、x3、x4不全为0。

   3.1-2-31;2-31;-2-31;-1;231-1;1;-1;-(231-1)

   4.(1-2-23)×2127;2-151;-2-151;-(1-2-23)×2127

   5.

(1)(25C03)16

      

(2)是规格化浮点数;它所表示的真值是1859×218

   6.

(1)(1-2-23)×2127

      

(2)-2127

      (3)规格化数所能表示的正数的范围:

2-129~(1-2-23)×2127;所能表示的负数的范围:

-2127~-(2-1+2-23)×2-128

   7.(-959×2-105)10

   8.(C0E90000)16

   9.证明:

因为x<0,按照定义,有

   [x]补=2+x

       =2-0.x1x2…xn

       =1+(1-0.x1x2…xn)

       =1+(0.11…11-0.x1x2…xn+0.00…01)

       =1+

+0.00…01

       =

+0.00…01

   10.证明:

因为[x]补=1.x1x2x3x4x5x6,即x<0,按照定义,有

   [x]补=2+x=1.x1x2x3x4x5x6

      x=1.x1x2x3x4x5x6-2

      =-1+0.x1x2x3x4x5x6

      =-(1-0.x1x2x3x4x5x6)

      =-(

+0.000001)

   因为x<0,按照定义,有

   [x]原=1-x

       =1+(

+0.000001)

       =

+0.000001

   11.

(1)[x+y]补=00.00110,x+y=0.00110,运算结果未发生溢出

       

(2)[x+y]补=1100111,x+y=-11001,运算结果未发生溢出

   12.

(1)[x-y]补=11.11100,x-y=-0.00100,运算结果未发生溢出

       

(2)[x-y]补=0101110,运算结果发生正溢

   13.2[x]补+1/2[y]补=11.0000011,运算结果未发生溢出

   14.

(1)[x+y]原=1.0011,x+y=-0.0011,运算结果未发生溢出

       

(2)因为完成|x|+|y|操作且操作结果的符号位为1,被加数为负数,所以运算结果发生负溢。

   15.

(1)[x-y]原=0.1100,x-y=0.1100,运算结果未发生溢出

       

(2)[x-y]原=11011,x-y=-1011,运算结果未发生溢出

   16.

(1)[x+y]移=010100,x+y=0100,运算结果未发生溢出

       

(2)[x+y]移=101000,运算结果发生正溢

   17.

(1)[x-y]移=011101,x-y=1101,运算结果未发生溢出

       

(2)[x-y]移=001101,x-y=-0011,运算结果未发生溢出

   18.余3码编码的十进制加法器单元电路如附图2.1所示。

附图2.1 余3码编码的十进制加法器单元电路

   19.

(1)①[x×y]原=1.0110110101,x×y=-0.0110110101

          ②[x×y]补=1.1001001011,x×y=-0.0110110101

       

(2)①[x×y]原=01101000101,x×y=+1101000101

          ②[x×y]补=01101000101,x×y=+1101000101

   20.

(1)①带求补器的原码阵列乘法器

            [x×y]原=1.0110110101,x×y=-0.0110110101

          ②带求补器的补码阵列乘法器

            [x×y]补=1.1001001011,x×y=-0.0110110101

          ③直接补码阵列乘法器

            [x×y]补=1.1001001011,x×y=-0.0110110101

       

(2)①带求补器的原码阵列乘法器

            [x×y]原=01101000101,x×y=+1101000101

          ②带求补器的补码阵列乘法器

            [x×y]补=01101000101,x×y=+1101000101

          ③直接补码阵列乘法器

            [x×y]补=01101000101,x×y=+1101000101

   21.

(1)①原码加减交替法

            [x÷y]原=1.10110,[余数]原=0.0000001110

            x÷y=-0.10110,余数=0.0000001110

          ②补码加减交替法

            [x÷y]补=1.01001,[余数]补=1.1111110011

            x÷y=-0.10111,余数=-0.0000001101

       

(2)①原码加减交替法

            [x÷y]原=010010,[余数]原=111011

            x÷y=+10010,余数=-11011

          ②补码加减交替法

            [x÷y]补=010011,[余数]补=000010

            x÷y=+10011,余数=+00010

   22.

(1)[x÷y]原=1.10110,[余数]原=0.0000110011

          x÷y=-0.10110,余数=0.0000110011

       

(2)[x÷y]原=010010,[余数]原=111001

          x÷y=+10010,余数=-11001

   23.

(1)x=46=(101110)2

    x的三种机器码表示及移位结果如附表2.2所示。

附表2.2 对x=46算术移位后的结果

   

(2)y=-46=(-101110)2

   y的三种机器码表示及移位结果如附表2.3所示。

附表2.3 对y=-46算术移位后的结果

   24.

(1)串行进位方式

       C1=G0+P0C0

       C2=G1+P1C1

       C3=G2+P2C2

       C4=G3+P3C3

   

(2)并行进位方式

       C1=G0+P0C0

       C2=G1+G0P1+P0P1C0

       C3=G2+G1P2+G0P1P2+P0P1P2C0

       C4=G3+G2P3+G1P2P3+G0P1P2P3+P0P1P2P3C0

   25.

(1)组间串行进位方式的ALU如附图2.2所示。

附图2.2 组间串行进位方式的ALU

   

(2)两级组间并行进位方式的ALU如附图2.3所示。

附图2.3 两级组间并行进位方式的ALU

   (3)三级组间并行进位方式的ALU如附图2.4所示。

附图2.4 三级组间并行进位方式的ALU

   26.

(1)[x+y]浮=11100,11.010010,[x-y]浮=11110,00.110001,和、差均无溢出

          x+y=2-100×(-0.101110),x-y=2-010×(0.110001)

       

(2)[x+y]浮=11010,00.101100,[x-y]浮=11100,11.011111,和、差均无溢出

          x+y=2-110×(0.101100),x-y=2-100×(-0.100001)

   27.

(1)[x×y]浮=11110,1.000110,乘积无溢出

          x×y=2-010×(-0.111010)

       

(2)[x×y]浮=00001,0.110100,乘积无溢出

          x×y=2001×(0.110100)

   28.

(1)[x÷y]浮=00100,1.111010,商无溢出

          x÷y=2100×(-0.111010)

       

(2)[x÷y]浮=11110,0.110001,商无溢出

          x÷y=2-010×(0.110001)

   29.定点补码加减运算中,产生溢出的条件是:

定点补码加减运算结果超出了定点数的表示范围。

   溢出判断的方法有三种:

①采用单符号位法;②采用进位判断法;③采用双符号位法,这种方法又称为“变形补码”或“模4补码”。

   浮点加减运算中,产生溢出的条件是:

浮点加减运算结果中阶码超出了它的表示范围。

   30.

(1)码距为4;最多能纠正1位错或发现2位错;出现数据00011111,应纠正成00001111;当已经知道出错位时,将该位数值取反即可纠正错误。

       

(2)码距为2;能发现1位错,不能纠错。

   31.

(1)1;   

(2)0

   32.至少需要设置6个校验位;

   设16个信息位为D16~D1,6个校验位为P6~P1,22位的海明码为H22~H1,则校验位的位置安排如下:

   H22H21H20H19H18H17H16H15H14H13H12H11H10H9H8H7H6H5H4H3H2H1

   P6D16D15D14D13D12P5D11D10D9D8D7D6D5P4D4D3D2P3D1P2P1

   即6个校验位P6~P1对应的海明码位号分别为H22、H16、H8、H4、H2、H1。

   33.

(1)1000110

       

(2)1111111

       (3)0001101

       (4)0000000

   34.读出的数据错误。

   35.

(1)代码的码距为3;

       

(2)这个代码是CRC码。

 

如有侵权请联系告知删除,感谢你们的配合!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1