计算机Science中,“浮点数”通常指“浮点数类型(floating point type)”或“浮点数格式(floating point format)”,这是计算机为表示实数(即小数)所使用的一种数据类型或数据格式,一般由指数部分和尾数部分组成,实现了对实数的近似表示。浮点数中拥有小数点,并且可以表示超过固定位数的数字,因此是十分常用的一种数据类型。
根据浮点数的精度和存储结构,浮点数可以分为单精度浮点数(float,32位,底数为23位)、双精度浮点数(double,64位,底数为52位)、扩展精度浮点数(long double)。其中,单精度浮点数的存储方式如下图所示:
在单精度浮点数的存储结构中,位数总共有32位,其中第0位为符号位,第1至第8位为指数位,第9至第31位为尾数位,可以表示32个二进制位,可以对应的十进制数精度在大约7个有效数字上下,而双精度浮点数可以表示至少15位的十进制数。
浮点数的方法和整数一样,可以进行基本的加减乘除以及幂运算等计算。但是由于浮点数在计算中存在舍入误差,因此浮点数的计算往往是不精确的,需要特别注意。此外,浮点数在计算机中的存储和运算都需要耗费大量的资源,因此在编写对性能要求较高的程序时,必须要合理使用浮点数;同时也要注意,浮点数的比较操作应该使用误差值来比较,而不是绝对值。
浮点数广泛应用于科学计算、工程计算、游戏开发等需要精确表示小数的领域。例如,在物理模拟、流体仿真、计算机图形学等领域,需要对小数进行高精度计算,而浮点数正是这些领域中最常用的数据类型之一。