1、第第1页页第二章第二章 习题解答习题解答7.若浮点数若浮点数 x IEEE754标准标准32位存放格式为位存放格式为(8FEFC000)16,求,求其浮点数十进制值。其浮点数十进制值。【解】【解】:将将x展开成二进制:展开成二进制:1000,1111,1110,1111,1100,0000,0000,0000数符数符:1阶码阶码:0001,1111尾数尾数:110,1111,1100,0000,0000,0000指数指数e阶码阶码1270001111101111111(-96)10包含包含隐藏位隐藏位1 1尾数:尾数:1.M1.110 1111 11 于是有于是有 x(1)s1.M2e-(1.
2、110111111)2-96(-9592-105)10第1页第第2页页第二章第二章 习题解答习题解答8.将数将数(-7.28125)10转换成转换成IEEE75432位浮点数二进制存放格式。位浮点数二进制存放格式。【解】【解】:首先分别将整数和分数部分转换成二进制数:首先分别将整数和分数部分转换成二进制数:-7.2812510-111.010012 然后移动小数点,使其在第然后移动小数点,使其在第1,2位之间位之间 111.010011.110100122e2 于是得到:于是得到:e=127S1,E2127129=1000,0001,M1101001最终得到最终得到32位浮点数位浮点数二进制存
3、放格式二进制存放格式为为 1100 0000 1110 1001 0000 0000 0000 0000 (C0E90000)16第2页第第3页页第二章第二章 习题解答习题解答【解】【解】x补补=00.11011y补补=11.01011x补补00.11011+y补补11.0101100.00110符号位出现符号位出现“00”00”,表示无,表示无溢出,溢出,x+y=0.0011011.已知已知x和和y,用变形补码计算,用变形补码计算x+y,同时指出结果是否溢出。,同时指出结果是否溢出。(1)x=0.11011,y=-0.10101【解】【解】x补补=00.10111-y补补=11.00101x
4、补补00.10111+y补补11.0010111.11100符号位出现符号位出现“11”,表示无溢出,表示无溢出,x-y=-0.0010012.已知已知x和和y,用变形补码计算,用变形补码计算x-y,同时指出结果是否溢出。,同时指出结果是否溢出。(1)x=0.10111,y=0.11011第3页第第4页页第二章第二章 习题解答习题解答13.已知已知x补补=1.1011000,y补补=1.0100110,用变形补码计算,用变形补码计算2x补补+1/2y补补=?,同时指出结果是否发生溢出。?,同时指出结果是否发生溢出。【解】【解】用变形补码,即双符号位。2x补补=11.01100001/2y补补=
5、11.1010011 注意:注意:不论左移还是右移,符号位不变,只对尾数进行处不论左移还是右移,符号位不变,只对尾数进行处理。理。11.0110000 +11.1010011 11.0000011 符号位为符号位为1111,故运算结果未溢出。,故运算结果未溢出。2x2x补补+1/2y+1/2y补补=1.0000011=1.0000011第4页第第5页页第二章第二章 习题解答习题解答17.已知x和y,用移码运算方法计算x-y,同时指出运算结果是否发生溢出。(1)x=1011,y=-0010【解】【解】x移移=111011=011011-y补补=000010 注意:注意:移码最高符号位恒置为移码最
6、高符号位恒置为0 0参加运算。参加运算。01 1011 +00 0010 01 1101 符号位为符号位为0101,故运算结果未溢出。,故运算结果未溢出。x-y=1101第5页第第6页页第二章第二章 习题解答习题解答20.已知x和y,分别用带求补器原码阵列乘法器、带求补器补码阵列乘法器和直接补码阵列乘法器计算xy。(1)x=0.10111 y=-0.10011【解】【解】:带求补器原码阵列乘法器带求补器原码阵列乘法器 x原=0.10111 y原=1.10011 乘积符号位为:xfyf=01=1 因符号位单独考虑,算前求补器使能控制信号为0,经算前求补后输出|x|=10111,|y|=10011
7、 10111 10011 10111 10111 10111 位数 0110110101 因算后求补器使能控制信号为0,经算后求补后输出为0110110101,加上乘积符号位1,得 xy原=1.0110110101 所以 xy=-0.0110110101 第6页第第7页页第二章第二章 习题解答习题解答带求补器补码阵列乘法器带求补器补码阵列乘法器 x补=0.10111 y补=1.01101 乘积符号位为:xfyf=01=1 算前求补后输出|x|=10111,|y|=10011 10111 10011 10111 10111 00000 00000 10111 位数 0110110101 算后求补
8、后输出为1001001011,加上乘积符号位1,得 xy补=1.1001001011 所以 xy=-0.0110110101 第7页第第8页页第二章第二章 习题解答习题解答 直接补码阵列乘法器直接补码阵列乘法器 x补=0.10111 y补=1.01101 计算过程:(0)1 0 1 1 1 (1)0 1 1 0 1 (0)1 0 1 1 1 (0)0 0 0 0 0 (0)1 0 1 1 1 (0)1 0 1 1 1 (0)0 0 0 0 0 0 (1)(0)(1)(1)(1)注意位数对齐 0 0 (1)0 0 1 0 0 1 0 1 1 (1)1 1 0 0 1 0 0 1 0 1 1 故
9、xy补=1.1001001011 所以 xy=-0.0110110101 第8页第第9页页第二章第二章 习题解答习题解答22.已知x和y,用原码阵列除法器计算xy。(1)x=0.10011 y=-0.11011【解】【解】:x原原=0.10011y原原=1.11011商符号位为:xf yf=0 1=1令令x=1001100000y=11011,其中x和y分别为x原和 y原数值部分:x补补=01001100000y补补=011011-y补补=100101 被除数被除数/余数余数商商 01001100000 +-y补补 100101 11100000000 q0=0 +y补补 011011 001
10、0110000 q1=1 +-y补补 100101 111011000 q2=0 +y补补 011011 01000100 q3=1 +-y补补 100101 0001110 q4=1 +-y补补 100101 110011 q5=0 故得 商q=q0q1q2q3q4q5=010110,余数r=r5r6r7r8r9r10=110011 所以 xy原=1.10110,余数原=0.0000110011 即 xy=-0.10110,余数=0.0000110011第9页第第10页页第二章第二章 习题解答习题解答26.设浮点数表示格式中阶码占设浮点数表示格式中阶码占3位,尾数占位,尾数占6位(都不包含符
11、号位)。阶码位(都不包含符号位)。阶码和尾数均采取含双符号位补码表示,运算结果尾数取单字长(含符号位共和尾数均采取含双符号位补码表示,运算结果尾数取单字长(含符号位共7位)位),舍入规则用,舍入规则用“0舍舍1入入”法,用浮点运算方法计算法,用浮点运算方法计算x+y、x-y。(1)x=2011(0.100101)y=2010(-0.011110)【解】【解】:y=2010(-0.011110)=2011(-0.111100)用补码表示:x=11101,00.100101,y=11101,11.000100 (1)对阶 E=Ex补-Ey补=0,完成对阶 (2)尾数相加减:相加 00.100101
12、 +11.000100 11.101001(3)规格化处理 加法结果不是规格化数,向左规格化向左规格化,即 x+y补=11 100,11.010010 阶码减1 减法结果不是规格化数,向右规格化向右规格化,即 x-y补=11 110,00.1100001 阶码加1相减 00.100101 +00.111100 01.100001 第10页第第11页页第二章第二章 习题解答习题解答(4)舍入处理 用“0舍1入”法,则结果为:x+y补=11 100,11.010010 x-y补=11 110,00.110001(5)溢出判断:阶码运算无溢出,故结果无溢出。x+y=-0.1011102-100 x-
13、y=+0.1100012-010第11页第第12页页第二章第二章 习题解答习题解答27.设浮点数表示格式中阶码占3位,尾数占6位(都不包含符号位),阶码采取双符号位补码表示,尾数用单符号位补码表示。要求用直接补码阵列乘法完成尾数乘法运算,运算结果尾数取单字长(含符号位共7位),舍入规则用“0舍1入”法,用浮点运算方法计算xy。(1)x=(0.110100)y=2100(-0.100100)【解】【解】:阶码采取双符号位阶码采取双符号位,尾数采取单符号位尾数采取单符号位,则有则有 x=00 011,0.110100 y=11 100,1.011100 (1)求阶码和求阶码和 Ex补补+Ey补补=
14、00 011+11 100=11 111,其数值为其数值为-1.第12页第第13页页第二章第二章 习题解答习题解答(2 2)乘法运算(直接并行补码阵列)乘法运算(直接并行补码阵列)(0)1 1 0 1 0 0 (1)0 1 1 1 0 0 (0)0 0 0 0 0 0 (0)0 0 0 0 0 0 (0)1 1 0 1 0 0 (0)1 1 0 1 0 0 (0)1 1 0 1 0 0 (0)0 0 0 0 0 0 0(1)(1)(0)(1)(0)(0)0 0 0 (1)0 0 0 1 0 1 1 0 0 0 0 (1)1 1 0 0 0 1 0 1 1 0 0 0 0 第13页第第14页页第二章第二章 习题解答习题解答Mx补补 My补补=0.110100补补 1.011100补补 =1.100010110000(3)规格化)规格化 当前计算结果不是规格化数,向左规格化,阶码减1,即 xy补补=11 110,1.00010110000(4)舍入处理)舍入处理 xy补补=11 110,1.000110 (5)溢出判断)溢出判断 阶码运算无溢出,故结果无溢出。xy=-0.1110102-010 第14页