我是靠谱客的博主 舒心小懒猪,最近开发中收集的这篇文章主要介绍浮点数在计算机中的储存原理浮点数在计算机中的储存原理,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

浮点数在计算机中的储存原理

浮点数的种类
·Double
·Float
Double和Float的区别主要在于精度的不同,Float占用计算机内存的4个Byte,而Double占用计算机内存的8个Byte,这使得两者之间各有千秋。Double比Float更为精确,因为它占用了两倍Float内存,但是也正因为这个原因,Double的运行要比Float慢得多。

浮点数的误差来源

浮点数比如用64位,8个Byte储存一个实数,那么计算机会用1位来表示符号,52位存储尾数,也就是实数小数点前的数,11位存储指数,也就是实数小数点后的数,注意了,计算机是二进制的,因而小数点后的数字要精确的话都必须是2的11次方分之一的倍数,不然的话,计算机会一直去除,当输出精度不够时,看似结果正确,实则这里是计算机自动四舍五入的结果,当你指定计算机输出精度够高时,计算机便会出错。

Example

例子

比如我这里设置一个浮点数Double x,我输入的值时0.45,但是0.45并不是2的十一次方分之一的整数倍,因此计算机只能不断的趋近,而此时我设定输出11位小数,这时候输出的精度没有达到计算机误差的精度,因为输出的值看似正确,实则看左下角变量栏,该输出值实际已经不等于0.45了,这是由二进制原理和浮点数的储存机制决定的。

查阅资料:CSDN论坛
计算机科学概论

最后

以上就是舒心小懒猪为你收集整理的浮点数在计算机中的储存原理浮点数在计算机中的储存原理的全部内容,希望文章能够帮你解决浮点数在计算机中的储存原理浮点数在计算机中的储存原理所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部