当前位置:网站首页>四字节的float比八字结的long范围大???
四字节的float比八字结的long范围大???
2022-08-02 08:22:00 【DNS是域名服务器】
学习上周在学Java的自动类型转换的时候,学习4字节的float能够存储的范围居然大于8字节的long。以往在学编程语言的时候,基本上都不会去记数据类型的取值范围,也没有比较过这两个数据类型到底谁的范围更大,4字节的float为何表示的范围能大于8字节的long呢?
主要的原因是因为浮点类型和整数类型的存储结构不相同,整数类型在计算机底层采用补码方式存储,除去首位的符号位,剩余的位数即表示数值的范围,也就是位数越多,范围越大,比如long在内存中占用8个字节共64位,符号位占一位,数值范围是-2的63次方到正2的63次方-1。那么对于单精度浮点数float是采用这样的结构存储的,当然了double的结构也是这样,只不过double是8个字节(32位)的。
float:4个字节 long:8个字节
整数与小数的底层存储有点不同。
相同点:
它们都是用二进制存储的
不同点:
小数先转成二进制,然后处理,然后存储。


符号位 其中最左边的为符号位,0为正,1为负。
指数 接下来的E是指数,一共8位,也用二进制来表示。IEEE规定,在float类型中,用来计算指数的偏移量为127(即存贮指数时要在原基础上+127)。
尾数 最后的F是小数部分,尾数正是由这23位的小数部分+1位组成的。
边栏推荐
- etcd implements large-scale service governance application combat
- Codeforces Round #811 (Div. 3)无DF
- PyCharm使用教程(详细版 - 图文结合)
- 抓包工具Charles修改Response步骤
- Biotin-C6-amine|N-生物素基-1,6-己二胺|CAS:65953-56-2
- [OC学习笔记]ARC与引用计数
- 52. [Bool type input any non-0 value is not 1 version reason]
- 工程师如何对待开源 --- 一个老工程师的肺腑之言
- Biotin-LC-Hydrazide|CAS:109276-34-8|生物素-LC-酰肼
- “蔚来杯“2022牛客暑期多校训练营4
猜你喜欢
随机推荐
pnpm的安装与使用
抓包工具Charles修改Response步骤
编程与哲学(2)——输出是为了更好的输入
AI目标分割能力,无需绿幕即可实现快速视频抠图
文章解读 -- FlowNet3D:Learning Scene Flow in 3D Point Clouds
Seleniu截图代码以及给图片赋值名字
Redisson实现分布式锁
JSP页面中page指令contentPage/pageEncoding具有什么功能呢?
USACO美国信息学奥赛竞赛12月份开赛,中国学生备赛指南
pycharm的基本使用教程(1)
(Note)阿克西斯ACASIS DT-3608双盘位硬盘阵列盒RAID设置
Flink 程序剖析
What is NoSQL?Databases for the cloud-scale future
PostgreSQL学习总结(11)—— PostgreSQL 常用的高可用集群方案
知识点滴 - 为什么一般不用铜锅做菜
OneinStack多版本PHP共存
二分类和多分类
QT web 开发 - 笔记 - 3
“蔚来杯“2022牛客暑期多校训练营4
测试时大量TIME_WAIT








![shell中计算命令详解(expr、(())、 $[]、let、bc )](/img/3c/5cc4d16b9b525997761445f32802d5.png)
