第二章 浮点数的表达与运算
- 格式:docx
- 大小:24.86 KB
- 文档页数:8
浮点数的运算方法浮点数是计算机中一种表示实数的数据类型,其特点是可以表示带有小数部分的数字。
在进行浮点数的运算时,需要考虑到浮点数的精度问题、舍入误差以及运算顺序等因素。
浮点数的表示方法为:±m×be,其中m为尾数(即小数部分的数值),b为基数或底数,e为指数(表示位移的量)。
1.浮点数加法运算:-对两个浮点数的指数进行比较,将较小指数的浮点数的尾数左移指数之差的位数,使两个浮点数的小数点对齐。
-对齐后的尾数相加,得到一个和。
-对和进行规格化,即将结果的尾数进行处理,使其满足指定的位数限制。
-对规格化后的结果进行舍入运算,得到最终结果。
2.浮点数减法运算:-先将减数的指数调整与被减数的指数相等。
-对齐后的尾数相减,得到一个差。
-对差进行规格化和舍入运算,得到最终结果。
3.浮点数乘法运算:-将两个浮点数的指数相加,得到加法的和,并相应地调整两个浮点数的尾数。
-尾数相乘,得到一个乘积。
-对乘积进行规格化和舍入运算,得到最终结果。
4.浮点数除法运算:-将被除数的指数减去除数的指数,得到差,并相应地调整两个浮点数的尾数。
-尾数相除,得到一个商。
-对商进行规格化和舍入运算,得到最终结果。
在进行浮点数运算时需要注意一些问题:-浮点数的精度问题:由于浮点数的尾数有限位数,所以会存在精度丢失的问题。
这就意味着进行浮点数运算时,可能会出现舍入误差,导致结果有微小的偏差。
-运算顺序:浮点数的运算顺序可能会影响最终结果。
在连续进行多次浮点数运算时,可能会得到不同的结果。
这是因为浮点数的运算不满足交换律和结合律。
因此,在编程中需要谨慎选择运算顺序,以避免结果的不确定性。
-溢出和下溢问题:由于浮点数的范围限制,可能会出现溢出(结果超出浮点数的表示范围)或下溢(结果过小,无法表示)的情况。
针对这些情况,需要进行特殊处理,如返回特定的错误码或进行科学计数法表示。
在实际编程中,可以使用编程语言提供的浮点数运算库或内置函数来进行浮点数运算,以确保运算结果的准确性和可靠性。
浮点数的表示方法
一、浮点数表示
一个数的浮点形式(设基数是2)可写成:
N = M × 2E
其中:M代表尾数,E代表阶码。
计算机中浮点数只用尾数和阶码表示,其形式如下:
浮点数的精度由尾数决定,数的表示范围由阶码的位数决定。
为了最大限度提高精度,尾数采用规格化形式,既1/2≤M<1。
采用二进制表示时,若尾数大于零,则规格化数应该是01XXXX的形式;若尾数小于零,则规格化数应为10XXXX的形式。
二、机器零
当浮点数的尾数为0或阶码为最小值时,计算机通常把该数当作零,因此程序中进行浮点运算时,判断某数是否为零,通常可以用小于某个极小值来代替。
三、实例
【例1】设X=0.0110×23 ,用补码、浮点数形式表示阶码为X j=011,尾数为00110,这时由于X 尾数不符合01XXXX的形式,因此不是规格化数,必须先进行规格化处理。
方法:若尾数小于1/2,把尾数左移一位(不包括符号位),观察结果是否满足规格化条件,满足则在把阶码减1即可,否则继续左移和调整阶码;若尾数大于1,则把尾数右移一位(不包括符号位),观察结果是否满足规格化条件,满足则在把阶码加1即可,否则继续右移和调整阶码。
上例中,00110左移一位为01100,符合规则化标准,此时阶码减1,为010即得到浮点表示形式。
这个数具体在计算机中如何表示要看计算机中规定的阶码和尾数的位数,若阶码和尾数均为16位,则上面的数X在计算机内部表示就是00000000000000100110000000000000 ,不足
均用零填充。
在计算机系统的发展过程中,曾经提出过多种方法表达实数,典型的比如定点数。
在定点数表达方式中,小数点位置固定,而计算机字长有限,所以定点数无法表达很大和很小的实数。
最终,计算机科学发展出了表达范围更大的表达方式——浮点数,浮点数也是对实数的一种近似表达。
1.浮点数表达方式我们知道任何一个R 进制数N 均可用下面的形式表示:N R =±S ×R ±e其中,S—尾数,代表N 的有效数字;R—基值,通常取2、8、16;e—阶码,代表N 的小数点的实际位置(相当于数学中的指数)。
比如一个十进制数的浮点表达1.2345×102,其中1.2345为尾数,10为基数,2为阶码。
一个二进制数的浮点表达0.001001×25,0.001001为尾数,2为基数,5为阶码;同时0.001001×25也可以表示成0.100100×23,0.100100为尾数,2为基数,3为阶码。
浮点数就是利用阶码e 的变化达到浮动小数点的效果,从而灵活地表达更大范围的实数。
2.浮点数的规格化一个数用浮点表示时,存在两个问题:一是如何尽可能多得保留有效数字;二是如何保证浮点表示的唯一。
对于数0.001001×25,可以表示成0.100100×23、0.00001001×27等等,所以对于同一个数,浮点有多种表示(也就是不能唯一表示)。
另外,如果规定尾数的位数为6位,则0.00001001×27会丢掉有效数字,变成0.000010×27。
因此在计算机中,浮点数通常采用规格化表示方法。
当浮点数的基数R 为2,即采用二进制数时,规格化尾数的定义为:1/2<=|S|<1。
若尾数采用原码(1位符号位+n 位数值)表示,[S]原=S f S 1S 2S 3…S n (S f 为符号位的数符),则满足S 1=1的数称为规格化数。
浮点数的运算方法浮点数是计算机中用于表示实数的一种数据类型,由于实数是无限的,而计算机只能存储有限的信息,所以必然存在精度误差。
浮点数的运算涉及到加法、减法、乘法和除法等基本运算,以及开方、幂函数等高级运算。
1.加法运算:浮点数相加时,先将较小的浮点数调整为与较大的浮点数相同的指数,然后进行尾数的相加,最后对结果进行规格化处理,即进行舍入操作,得到最终的结果。
2.减法运算:浮点数相减的原理与加法相同,只是在相减之前,需要将两个浮点数的指数调整为相等,然后进行尾数的相减操作,最后同样需要对结果进行规格化处理。
3.乘法运算:浮点数相乘时,将两个浮点数的指数相加,然后将尾数相乘得到结果的尾数部分,最后对结果进行规格化处理。
4.除法运算:浮点数除法的原理与乘法类似,先将两个浮点数的指数相减,然后将尾数相除得到结果的尾数部分,最后同样需要进行规格化处理。
5.开方运算:浮点数的开方运算是通过求解多项式的根来实现的,常用的方法有牛顿法、二分法和二次近似法等。
这些方法都是通过迭代的方式,逐步逼近平方根的值,直到达到所需的精度。
6.幂函数运算:浮点数的幂函数运算可以通过连乘或连乘的方式实现。
幂函数运算的精度取决于底数和指数的精度以及所需的结果精度。
在浮点数的运算过程中,需要注意以下几个常见问题:1.精度丢失:浮点数的表示是有限的,不可避免地存在精度误差,特别是在进行连续的浮点数运算时,会导致误差累积,可能导致结果的不准确。
2.舍入误差:浮点数的结果需要进行舍入操作以保持一定的精度。
舍入规则有多种,如四舍五入、向上取整、向下取整等,选择合适的舍入规则可以减小误差。
3.溢出和下溢:浮点数的范围是有限的,当计算结果超出范围时,会发生溢出;当结果接近零但无法表示时,会发生下溢。
这两种情况都需要进行特殊处理。
4. 特殊数值:浮点数中有几个特殊的数值,如无穷大(Infinity)、非数值(NaN)和零(0)。
这些特殊值的运算需要按照特定的规则进行处理,以免引起错误。
浮点数的表示与运算一、选择1、在规格化浮点数运算中,若浮点数为25×1.10101,其中尾数为补码表示,则该数需将尾数左移一位规格化2、浮点数格式如下:1位阶符,6位阶码,1位数符,8位尾数。
若阶码用移码,尾数用补码表示,则浮点数所能表示数的范围是-263 ~(1-2-8)×2633、某浮点机,采用规格化浮点数表示,阶码用移码表示(最高位代表符号位),尾数用原码表示。
下列哪个数的表示不是规格化浮点数?(B )阶码尾数A.11111111,1.1000 (00)B.0011111,1.0111 (01)C.1000001,0.1111 (01)D.0111111,0.1000 (10)4、设浮点数阶的基数为8,尾数用模4补码表示。
试指出下列浮点数中哪个是规格化数?(C )A.11.111000B.00.000111C.11.101010D.11.1111015、按照IEEE654标准规定的32位浮点数(41A4C000)16对应的十进制数是( D )A.4.59375B.-20.59375C.-4.59375D.20.593756、如果某单精度浮点数、某原码、某补码、某移码的32位机器数为0xF0000000。
这些数从大到小的顺序是移>补>原>浮7、假定采用IEEE754标准中的单精度浮点数格式表示一个数为45100000H,则该数的值是(+1.125)10×2118、设浮点数共12位。
其中阶码含1位阶符共4位,以2为底,补码表示:尾数含1位数符共8位,补码表示,规格化。
则该浮点数所能表示的最大正数是27-19、如果浮点数的尾数用补码表示,则下列(D )中的尾数是规格化数形式。
A. 1.11000B. 0.01110C. 0.01010D.1.0001010、设浮点数的基数为4,尾数用原码表示,则以下(C )是规格化的数。
A. 1.001101B.0.001101C.1.011011D.0.00001011、已知X=00.875×21,Y=0.625×22,设浮点数格式为阶符1位,阶码2位,数符1位,尾数3位,通过补码求出Z=X-Y 的二进制浮点数规格化结果是0111 01112、IEEE754标准中的舍入模式可以用于二进制数也可以用于十进制数,在采用舍入到最接近且可表示的值时,若要舍入两个有效数字形式,(12.5)D应该舍入为1213、下列关于舍入的说法,正确的是(E )A.不仅仅只有浮点数需要舍入,定点数在运算时也可能要舍入B. 在浮点数舍入中,只有左规格化时可能要舍入C. 在浮点数舍入中,只有右规格化时可能要舍入二、综合应用题1、什么是浮点数的溢出?什么情况下发生上溢出?什么情况下发生下溢出?2、现有一计算机字长32位(D31~D0),数符位是第31位。
浮点运算方法实例浮点运算是计算机科学中非常重要的一部分,它涉及到处理实数的运算和精度问题。
在计算机中,实数被表示为浮点数,即带有小数点的数值。
而浮点运算则是对这些浮点数进行加、减、乘、除等运算的过程。
本文将通过几个实例来介绍浮点运算的方法和注意事项。
一、浮点数的表示在计算机中,浮点数一般采用IEEE 754标准来表示。
它由三个部分组成:符号位、指数位和尾数位。
符号位表示数值的正负,指数位表示数值的放大倍数,尾数位表示数值的具体数值。
例如,浮点数3.14可以表示为:符号位为0(正数)、指数位为2(表示放大100倍)、尾数位为314。
这样,计算机就可以通过这三个部分来进行浮点数的运算了。
二、浮点数的加法运算浮点数的加法运算需要考虑两个关键问题:精度损失和溢出问题。
精度损失是由于浮点数的表示有限而导致的,例如0.1无法精确表示为二进制数。
溢出问题是当两个浮点数相加的结果超出了计算机可以表示的范围时出现的。
为了避免这些问题,可以采用一些技巧,例如使用更高的精度进行计算、将浮点数转化为整数进行运算等。
三、浮点数的减法运算浮点数的减法运算和加法运算类似,也需要考虑精度损失和溢出问题。
不过,减法运算还需要注意减法的顺序,即先减小的数再减大的数,以避免出现负数结果。
四、浮点数的乘法运算浮点数的乘法运算也需要考虑精度损失和溢出问题。
在进行乘法运算时,可以采用分解乘法的方法,将浮点数分解成符号位、指数位和尾数位来进行运算。
另外,还可以使用舍入规则来处理乘法运算中的精度问题,例如四舍五入、向上取整、向下取整等。
五、浮点数的除法运算浮点数的除法运算同样需要考虑精度损失和溢出问题。
在进行除法运算时,需要注意除数不能为零,否则会导致除法运算的结果为无穷大或无穷小。
此外,还可以使用舍入规则来处理除法运算中的精度问题,例如四舍五入、向上取整、向下取整等。
六、浮点数的比较运算浮点数的比较运算需要考虑浮点数的精度问题。
由于浮点数的表示有限,所以在进行比较运算时需要注意精度损失带来的误差。
计算机基础知识了解计算机中的浮点数表示和运算计算机基础知识:了解计算机中的浮点数表示和运算计算机科学中的浮点数是非常重要的一部分。
在许多计算机应用中,浮点数被用来表示和计算具有小数点的数值。
了解浮点数的表示方法和运算规则,对于理解计算机中数字处理的原理和特性非常有帮助。
本文将介绍计算机中浮点数的表示和运算规则。
一、浮点数表示方法在计算机中,浮点数采用科学记数法的方式进行表示。
它由两部分组成:尾数和指数。
尾数部分是一个二进制小数,通常将其规范化为1.xxxxxx的形式。
这个小数点的位置可以通过指数进行调整。
指数部分是一个带符号的整数,用于表示小数点在尾数中的位置。
正指数表示小数点向右移动,负指数表示小数点向左移动。
通过将尾数和指数组合起来,就可以表示任意大小和精度的浮点数。
二、浮点数运算规则在计算机中,浮点数的运算遵循一定的规则,包括加法、减法、乘法和除法等。
1. 加法和减法当进行浮点数加法或减法时,首先需要将两个浮点数的指数进行比较,并将较小的指数调整为与较大指数相等,同时也需要相应地调整尾数。
接下来,将调整后的尾数进行相加或相减,并根据结果进行规范化和舍入。
2. 乘法在浮点数乘法中,首先将两个浮点数的尾数进行相乘,并将结果进行规范化。
然后将两个浮点数的指数相加,得到最终结果的指数。
最后,根据指数的差异进行舍入和溢出的处理。
3. 除法在浮点数除法中,首先将两个浮点数的尾数进行相除,并将结果进行规范化。
然后将两个浮点数的指数相减,得到最终结果的指数。
最后,根据指数的差异进行舍入和溢出的处理。
三、浮点数的精度问题由于计算机中浮点数的表示是有限的,所以在进行运算时会存在精度的损失。
这是由于计算机在表示小数时只能采用有限的二进制位数。
例如,当两个非常接近的浮点数进行相减时,可能会因为精度限制而得到一个极小的非零值,这种情况被称为舍入误差。
此外,在进行大数和小数的运算时,可能会出现溢出或下溢的问题。
溢出是指计算结果超出了浮点数的表示范围,而下溢是指计算结果过小而无法表示。
单片机浮点数的运算原理及表达方式单片机一般浮点数均采用士MxC的形式来表示,其中M称为尾数。
它一般取为小数0≤M浮点数也有各种各样表示有符号数的方法,其中数的符号常和尾数放在一起,即把士M 作为一个有符号的小数,它可以采用原码、补码等各种表示方法,而阶码可采用各种不同的长度,并且数的符号也可以放于各种不同的地方。
所以浮点数有很多的表示方法。
四字节浮点数表示法是微机中常用的一种表示方式。
浮点数总长度是32位,其中阶码8位,尾数是24位。
阶码和尾数均为2的补码形式。
阶码的最大值位+127,最小值-128,这样四字节浮点数能表示的最大值近似于l×2(的127次方)=l70×l0(的38次方),能表示的最小值近似为0.5×2(的-128次方)=1.47×10(的-39次方),这时该范围内的数具有同样的精度。
四字节的浮点数精度较高,接近7位十进制数,但是由于字节较多,运算速度较慢,往往不能满足实时控制和测量的需要,并且实际使用时所需的精度一般不要求这么高,三字节浮点数就满足了这个要求,精度较低,但运算速度较高。
浮点数总长为24位,其中阶码为7位,数符在阶码所在字节的最高位,尾数为16位,这种表示法运算速度较快需要的存储容量较小,并且数的范围和精度能满足大多数应用场合的需要。
下面的程序基本都采用这种表示方法。
规格化浮点数,在实际应用中,需要有一个程序来完成把一个非规格化数变规格化数的操作。
在进行规格化操作时,对原码表示的数,一般是先判断尾数的最高位数值位是0还是1。
如果是0则把尾数左移l位,阶码减1再循环判断,如果是1,则结束操作。
由于零无法规格化,一旦尾数为0,则把阶码置为最小值。
如果在规格化中,阶码减1变成最小值时,不能再继续进行规格化操作,否则发生阶码下溢出,一般称之为左规格化操作。
浮点数的表示与运算
浮点数的表示和运算涉及到计算机内部对实数的二进制表示以及相关的运算规则。
在计算机中,浮点数一般采用 IEEE 754 浮点数标准进行表示。
这个标准规定了浮点数的二进制表示、舍入规则以及基本运算规则。
1. 浮点数的表示:
IEEE 754 浮点数标准规定了浮点数的二进制表示形式,主要包括三个部分:符号位、指数位和尾数位。
一个浮点数表示为:(127)(1) 1.2S E M −−⨯⨯
• S 是符号位,1位,0 表示正数,1 表示负数。
• M 是尾数(也称为尾数部分或尾数位),通常为23位。
• E 是指数,8位。
2. 浮点数的运算:
浮点数的运算包括加法、减法、乘法、除法等。
在进行浮点数运算时,需要注意以下几点:
• 舍入误差: 浮点数的表示范围是有限的,因此在运算中可能会出现舍入误差,导致最终结果的精度不准确。
• 溢出和下溢: 运算可能导致结果超出浮点数表示范围,这称为溢出;结果太接近零而无法表示,称为下溢。
• 运算顺序: 浮点数运算的顺序可能影响结果。
由于浮点数的有限精度,运算的顺序可能导致不同的舍入误差。
•特殊值处理:浮点数标准定义了特殊值,如正无穷大、负无穷大、NaN(Not a Number),在运算中需要适当处理这些特殊值。
在实际应用中,为了减小舍入误差,可能需要使用高精度库或者一些优化技巧,同时在编写代码时需要注意规避可能导致溢出和下溢的情况。
另外,对于一些对精度要求较高的场景,可能需要谨慎选择算法和数据结构。
浮点数的表示与运算一、选择1、在规格化浮点数运算中,若浮点数为25×1.10101,其中尾数为补码表示,则该数需将尾数左移一位规格化2、浮点数格式如下:1位阶符,6位阶码,1位数符,8位尾数。
若阶码用移码,尾数用补码表示,则浮点数所能表示数的范围是-263 ~(1-2-8)×2633、某浮点机,采用规格化浮点数表示,阶码用移码表示(最高位代表符号位),尾数用原码表示。
下列哪个数的表示不是规格化浮点数?(B )阶码尾数A.11111111,1.1000 (00)B.0011111,1.0111 (01)C.1000001,0.1111 (01)D.0111111,0.1000 (10)4、设浮点数阶的基数为8,尾数用模4补码表示。
试指出下列浮点数中哪个是规格化数?(C )A.11.111000B.00.000111C.11.101010D.11.1111015、按照IEEE654标准规定的32位浮点数(41A4C000)16对应的十进制数是( D )A.4.59375B.-20.59375C.-4.59375D.20.593756、如果某单精度浮点数、某原码、某补码、某移码的32位机器数为0xF0000000。
这些数从大到小的顺序是移>补>原>浮7、假定采用IEEE754标准中的单精度浮点数格式表示一个数为45100000H,则该数的值是(+1.125)10×2118、设浮点数共12位。
其中阶码含1位阶符共4位,以2为底,补码表示:尾数含1位数符共8位,补码表示,规格化。
则该浮点数所能表示的最大正数是27-19、如果浮点数的尾数用补码表示,则下列(D )中的尾数是规格化数形式。
A. 1.11000B. 0.01110C. 0.01010D.1.0001010、设浮点数的基数为4,尾数用原码表示,则以下(C )是规格化的数。
A. 1.001101B.0.001101C.1.011011D.0.00001011、已知X=00.875×21,Y=0.625×22,设浮点数格式为阶符1位,阶码2位,数符1位,尾数3位,通过补码求出Z=X-Y 的二进制浮点数规格化结果是0111 01112、IEEE754标准中的舍入模式可以用于二进制数也可以用于十进制数,在采用舍入到最接近且可表示的值时,若要舍入两个有效数字形式,(12.5)D应该舍入为1213、下列关于舍入的说法,正确的是(E )A.不仅仅只有浮点数需要舍入,定点数在运算时也可能要舍入B. 在浮点数舍入中,只有左规格化时可能要舍入C. 在浮点数舍入中,只有右规格化时可能要舍入二、综合应用题1、什么是浮点数的溢出?什么情况下发生上溢出?什么情况下发生下溢出?2、现有一计算机字长32位(D31~D0),数符位是第31位。
对于二进制1000 1111 1110 1111 1100 0000 0000 0000,1)表示一个补码整数,其十进制值是多少?2)表示一个无符号整数,其十进制值是多少?3)表示一个IEEE754标准的单精度浮点数,其值是多少?3、已知十进制数X=-5/256、Y=+59/1204,按机器补码浮点数运算规则计算X-Y,结果用二进制表示,浮点数格式如下:阶符取2位,阶码取3位,数符取2位,尾数取9位。
4、设浮点数字长32位,其中阶码部分8位(含一位阶符),尾数部分24位(含一位数符),当阶码的基值分别是2和16时:1)说明基值2和16在浮点数中如何表示。
2)当阶码和尾数军用补码表示,且尾数采用规格化形式时,给出两种情况下所能表示的最大正数真值和非零最小正数真值。
3)在哪种基值情况下,数的表示范围大?4)两种基值情况下,对阶和规格化操作有何不同?5、已知两个实数x=-68,y=-8.25,它们在C语言中定义为float 型变量,分别存放在寄存器A和B中。
另外,还有两个寄存器C和D。
A、B、C、D、都是32位的寄存器。
请问(要求用十六进制表示二进制序列):1)寄存器A和B中的内容分别是什么?2)x和y相加后结果存放在C寄存器中,寄存器C中的内容是什么?3)x和y相减后的结果存放在寄存器D中,寄存器D中的内容是什么?6、设浮点数的格式如下(阶码和尾数均用补码表示,基数为2):1)将27/46转换为浮点数2)将-27/46转换为浮点数7、两个规格化浮点数进行加/减法运算,最后对结果规格化时,能否确定需要右规的次数?能否确定需要左规的次数?8、对于下列每个IEEE754单精度值,解释它们所表示的是哪一种数字类型(规格化数、非规格化数、无穷大、0)。
当它们表示某个具体数值时,请给出该数值。
1)0b0000 0000 0000 0000 0000 0000 0000 00002)0b0100 0010 0100 0000 0000 0000 0000 00003)0b1000 0000 0100 0000 0000 0000 0000 00004)0b1111 1111 1000 0000 0000 0000 0000 00009、IBM370的短浮点数格式中,总位数为32位,左边第一位(b0)为数符,随后七位(b1~b7)为阶码,用移码表示,偏置常数为64,右边24位(b8~b31)为6为16进制原码小数表示的尾数,采用规格化形式表示。
若将十进制数-265.625用该浮点数格式表示,则应表示为(用十六进制形式表示)A. C3109A00HB. 43109A00HC. 83109A00HD. 03109A00H10、IBM370的短浮点数格式中,总位数为32位,左边第一位(b0)为数符,随后七位(b1~b7)为阶码,用移码表示,偏置常数为64,右边24位(b8~b31)为6为16进制原码小数表示的尾数,采用规格化形式。
若将十进制数-260.125用该浮点数格式表示,则应表示为什么?(用十六进制形式表示)11、IBM370的短浮点数格式中,总位数为32位,左边第一位(b0)为数符,随后七位(b1~b7)为阶码,用移码表示,偏置常数为64,右边24位(b8~b31)为6为16进制原码小数表示的尾数,采用规格化形式。
假定一个数表示成该浮点数格式为40100110H(用十六进制形式表示),则该数的真值是多少?12、把十进制数x=(+128.75)×2-10写成浮点表示的机器数,其中阶码、尾数分别用原码反码和补码表示。
设阶码4位,阶符1位,尾数15位,尾数符号1位。
13、设字长32的浮点数,阶码10位用移码表示,尾数22位用补码表示,基数为2,其格式如下:1)求最大数的二进制表示;2)求最小数的二进制表示;3)求规格化的范围14、有一个字长为32位的浮点数,阶码10位(包括1位阶符),用移码表示:尾数22位(包括1位尾符)用补码表示,基数r=2。
请写出:1)其所能表达的最大数,用二进制表示;2)其所能表达的最小数,用二进制表示;3)规格化数所能表示的数的范围;4)最接近于零的正规格化数与负规格化数。
15、两规格化浮点数相乘,是否可能需要右规?为什么?是否可能需要左规?若需要,能否确定左规的次数?16、两规格化浮点数相乘,是否可能需要左规?为什么?是否可能需要右规?若需要,能否确定左规的次数?17、设阶为5位(包括2位阶符),尾数为8位(包括2位数符),阶码、尾数均用补码表示,完成下列取值的[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.01011018、已知两浮点数:A=(-0.010011)×2-010,B=(+0,110111)×2+001.假定阶码和尾数都用补码表示,阶码4位(含1位符号位),尾数7位(含1位符号位)。
试按规格化补码加法规则和步骤,采用“0舍1入”法,求[A+B]补=?19、用浮点数运算步骤对56+5进行二进制运算,浮点数格式为1位符号位、5位阶码位、10位尾码,基数为2。
算术逻辑运算单元ALU一、选择1、并行加法器中,每位全和的形式除与本位相加二数数值位有关外,还与低位数送来的进位有关2、ALU作为运算器的核心部件,其属于组合逻辑电路3、在串行进位的并行加法器中,影响加法器运算速度的关键因素是进位传递延迟4、加法器中每一位的进位生成信号g为X i Y i5、用8片74181 和两片74182 可组成二级先行进位结构的32位ALU6、组成一个运算器需要多个部件,但下面()不是组成运算器的部件。
A. 状态寄存器B. 数据总线C.ALUD. 地址寄存器7、加法器采用并行进位的目的是提高加法器运算速度8、算术/逻辑单元74181可完成16种算术运算功能和16种逻辑运算功能。
9、使用74LS181这种器件来构成一个16位的ALU,需要使用 4 片74LS181。
10、用4片74181和1片74182相配合,具有组内、组间均为并行进位传递功能。
11、用8片74181和2片74182可组成二级先行进位结构的32位ALU。
二、综合应用题1、一个由4个一位全加器构成的加法器,其进位链小组信号为C4、C3、C2、C1,各全加器的操作数位A i、B i(1≤i≥4)低位来的进位信号C0,请分别按下述两种方式写出C1、C2、C3和C4的逻辑表达式。
1)串行进位方式2)并行进位方式。