小数点的位置可以在数据位之间移动的数据称为浮点型数据,与数学中的实数相对应,与定点数相比,它的表示范围可以更大,还存在一个数据精度(有效数字位数)的问题。
例如:123.456可用如下多种表示:
12.3456×101
0.123456×103
1.23456×102,只有最后这种表示属于科学计数法 计算机中浮点数据编码的一般形式为: N=(-1)S×M×RE
在计算机中,浮点数通常被表示成如下格式:
其中:S:代表符号位,0代表正,1代表负,是浮点数(即尾数部分)的符号。 M:代表尾数,也就是有效数字,用定点小数表示,通常用原码表示。
R:指数的底,约定为2,不必表示出来,E:代表阶码,是一个整数,可正可负,一般用移码表示,用RE×尾数M可得到浮点数的绝对值。
合理地选择阶码和尾数的位数m和n的值是十分重要的,以便在总长度为1+m+n位二进制表示的浮点数中,既保证有足够大的数值范围(取决于m),又保证有所要求的数值精度(取决于n)。
需要对浮点数的表示和运算做出某些规定,国际上得到普遍应用的是IEEE-754标准,明确规定了表示浮点数所用的位数和几个字段的分配关系,规格化表示和规格化操作,隐藏位的使用等方案,如表2.4所示:
表2.4 三种浮点数格式
请注意,1位的符号位用于表示浮点数的符号,也可以说是尾数的符号。
32位或64位的尾数用于表示数值,规定用规格化的原码小数表示。
规格化是指非0值的浮点数的位数必须满足1/2≤|M|<1的要求,即小数点后的最高位数字必须为1。在遇到不满足这一规定的情况下,需要把非规格化的浮点数变成为规格化表示的浮点数,这项操作被称为规格化操作。使用规格化的浮点数便于浮点数之间的运算与比较,也有利于提高浮点数的表示精度。
既然尾数的最高位的值一定要为1,在实用中,可以通过把整个尾数左移一位的办法把最高位的这个1移走,使受尾数位数限制不能被保存的更低一位上的一个数位得以保存,从而提高了一个二进制位的表示精度,这项处理方案被称为隐藏位技术,被用于单精度和双精度浮点数的存储中。临时浮点数中不使用隐藏位技术。
8位或11位的阶码用作为以2为底的一个指数的幂,只能是整数,它的位数决定了浮点数的表示范围,通常用移码表示,移码由1位符号位和n位数据位构成。
对于一个n+1位的整数,移码的定义是 [x]移=2n + x,其表示范围-2n≤x <2n,例如,8位的移码是27+ X,称为移128的方案,移码形式的机器数比数X在数轴上右移了128。
X=-127,[x]移=27+X=128 +(-127) = 1 =(00000001)2 ,
X= 127,[x]移=27+X=128 + 127 = 255 =(11111111)2
请注意,移码只用于表示整数,仅用在浮点数的阶码部分。对同一个X,其移码数与补码数有简单的对应关系,数值位相同,符号位相反,移码用0表示负号,1表示正号。
使用移码的优点是:便于比较两个移码数的大小,移码表示的机器数与数在数轴上的排列关系一致,正数大于负数,用在浮点数的阶码部分时,有利于加快浮点数的比较的速度,有利于判断浮点数的0。
上古之神有哪几个(神话世界里的十大上古正神) 在中国五千年的历史长河中,曾创造出无数的神话传说,诞生了许多的神话人物。神话是古代人们最纯粹、最原始的信仰,代表了人类内心对自然、对世界、对生命的各种期盼和需求。因此,每个古文明都有专属于自己的神话。我们的神话虽然博大精深源远流长,但可惜的是在几千年的岁月中,没有能够形成一套完整的体系。纵观神话演变
狸花猫是土猫吗(哪一个品种的猫好养又温顺?) 和养猫人聊起当初养猫经历,就会发现,几乎每个养猫人的的经历都不一样。有的人很谨慎,早早提前做足功课;有的人很洒脱,别人推荐什么就是什么;有的人大大咧咧,碰到什么就是什么。还有一类比较特别,之前没有想过养猫,就稀里糊涂地当上了“猫奴”。本人就属于最后这一类,我是被狸花猫咪咪三番五次光顾之后,在什么都没
绿萝可以放在卧室吗为什么(家里为什么不能养绿萝?) 绿萝是一种漂亮的绿植,叶片纹路清晰,碧绿油亮,尤其是打造出造型以后,比如养成绿萝柱,或者是养成绿萝瀑布,都会给人很舒适很清爽的感觉。而且大多数人家养绿萝,主要原因还是因为它吸收甲醛的能力,是很多人喜欢的健康花,能吸收室内的有害气体,然后转化成人吸收的氧气。可以说家里养绿萝优点多多,也就难怪绿萝成为家
反重力原理详解(反重力装置是什么?我们见过的反重力装置都有哪些?) 反重力原理说起来很简单,我们站在地球上,地球对我们施加了一个G的重力加速度,如果向我们反方向施加一个G的加速度,理论上我们就处于失重状态了。这种反重力方式我们也见过,比如在空间站上的航天员,他们就处于失重状态。他们的失重原因是因为空间站围绕地球飞行时,离心力和地心引力平衡并抵消了加速度。还有我们常见
来电显示未知怎么回事(来电显示归属地错乱是什么原因) iphone归属地错误原因是网络错误,重新设置一下即可。以iphone 12为例,可参考以下步骤,使苹果来电归属地显示正常:1、步骤概述:在iPhone12的主屏幕,点击这里的设置图标。2、步骤概述:在设置界面,点击这里通用选项。3、步骤概述:在通用设置界面,点击这里的还原选项。4、步骤概述:在还原