单精度浮点数是用来表示带有小数部分的
实数,一般用于
科学计算。占用4个字节(32位)存储空间,包括符号位1位,
阶码8位,尾数23位。其数值范围为-3.4E38~3.4E38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。
单精度浮点数格式是一种计算机数据格式,在
计算机存储器中占用4个字节(32 bits),利用“浮点”(浮动小数点)的方法,可以表示一个范围很大的数值。
在IEEE 754-2008的定义中,32-bit base 2格式被正式称为binary32格式。这种格式在IEEE 754-1985被定义为single,即单精度。需要注意的是,在更早的一些计算机系统中,也存在着其他4字节的浮点数格式。
单精度浮点数表示法规定:把一个数转换成浮点数储存时,整数部分保持位“1”,但这个“1”不存储,是隐含的。因此把一个单精度浮点数转换成真值时,需要在尾数的整数部分加一个“1”。
例如:13=1101B,将其规格化成浮点数后的结果位1.101×211,其整数部分的“1”不存储。尾数中只存储存小数部分的“101”。阶码部分为纯整数,并用移码表示。在使用单精度浮点数格式表示时,阶码的偏移值为127(即1111111B)。所以采用单精度浮点数表示时,数的真值为(-1)S2e-127×(1.f)
浮点数是属于
有理数中某特定
子集的数的数字表示,在计算机中用以近似表示任意某个
实数。具体的说,这个实数由一个
整数或
定点数(即
尾数)乘以某个基数(计算机中通常是2)的整数次幂得到,这种表示方法类似于基数为10的
科学计数法。
一个浮点数a由两个数m和e来表示:a = m × b^e。在任意一个这样的系统中,我们选择一个
基数b(记数系统的基)和精度p(即使用多少位来存储)。m(即尾数)是形如±d.ddd...ddd的p位数(每一位是一个介于0到b-1之间的
整数,包括0和b-1)。如果m的第一位是非0整数,m称作
规格化的。有一些描述使用一个单独的符号位(s 代表+或者-)来表示正负,这样m必须是正的。e是指数。
补码(英语:2's complement)是一种用
二进制表示有号数的方法,也是一种将数字的正负号变号的方式,常在计算机科学中使用。
一个数字的补码就是将该数字作
比特反相运算(即
反码),再将结果加1。在补码系统中,一个负数就是用其对应正数的补码来表示。
补码系统的最大优点是可以在
加法或
减法处理中,不需因为数字的正负而使用不同的计算方式。只要一种加法电路就可以处理各种有号数加法,而且减法可以用一个数加上另一个数的补码来表示,因此只要有加法电路及补码电路即可完成各种有号数加法及减法,在电路设计上相当方便。
另外,补码系统的0就只有一个表示方式,这点和
反码系统不同(在反码系统中,0有二种表示方式),因此在判断数字是否为0时,只要比较一次即可。