📅  最后修改于: 2023-12-03 15:31:21.624000             🧑  作者: Mango
IEEE 754是一种二进制浮点数算术标准, 由IEEE(Institute of Electrical and Electronics Engineers)制定。它是现代计算机中浮点数的表现形式,旨在确保浮点数的互操作性和兼容性。
IEEE 754浮点数有两种格式:
单精度浮点数格式中,其中最高位为符号位(0表示正数,1表示负数)。接着的8位为指数位,再接着的23位为尾数位。
指数位采用的是移码算法,即将真实的指数值加上127(单精度),这样,如果浮点数为0,指数位全为0;如果浮点数为NaN,则指数位全为1且尾数位不全为0。
浮点数最终的表达式为:
(-1)^S × M × 2^(E - 127)
其中,S为符号位,M为尾数,E为指数。
双精度浮点数格式中,其中最高位为符号位(0表示正数,1表示负数)。接着的11位为指数位,再接着的52位为尾数位。
指数位同样采用的是移码算法,即将真实的指数值加上1023(双精度),这样,如果浮点数为0,指数位全为0;如果浮点数为NaN,则指数位全为1且尾数位不全为0。
浮点数最终的表达式为:
(-1)^S × M × 2^(E - 1023)
其中,S为符号位,M为尾数,E为指数。
虽然IEEE 754标准提供了高精度的浮点数表示方式,但在实际使用中还是要考虑精度问题。由于计算机存储空间有限,浮点数的精度会受到限制。单精度浮点数最多只能表示23位有效数字,双精度浮点数最多只能表示52位有效数字。
由此可见,在进行精度较高的浮点数计算时,应选用更高精度的算法,如 BigDecimal 等。
IEEE 754浮点数广泛应用于现代计算机,尤其是在科学计算、金融计算等需要高精度计算的领域。它还广泛应用于图形图像处理、视频编码解码等领域。