数字按ASCII储存就是用八位储存一个数字,可是一个浮点型六位有效数字又只有四个字节,为什么呢?
1 回答
已采纳
onemoo
TA贡献883条经验 获得超454个赞
字符型占 8 位,那么数字按照字符来保存当然就是 8 位一个数。
但是浮点数并不是按照字符来保存的啊!
浮点值是按照相应的浮点类型格式来保存的,一般来说这个格式遵循 IEEE-754 标准,也就是 float 采用占用 32 的格式,而 double 占用 64 位。 所以这与字符编码没有关系,浮点数就是能够用 32 位(4字节)或 64 位(8字节)来表示。
毕竟无法保存的下无限长的浮点数,所以 float 的精度只有大约 7 位有效数字,double 精度大约是 15 位有效数字。
至于 IEEE-754 的具体编码方式你可以去查询下详细描述。简单的说 IEEE-754 标准是把符号位、有效数字位和指数位分别编码到 32 位(float)或 64 位(double)的不同位置上。不过这些你并不用详细了解。
- 1 回答
- 1 关注
- 1308 浏览
添加回答
举报
0/150
提交
取消