当前位置:网站首页>四字节的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位组成的。
边栏推荐
猜你喜欢
Business Intelligence Platform BI Business Intelligence Analysis Platform How to Choose the Right Business Intelligence Platform BI
如何做好项目管理
[ansible] playbook explains the execution steps in combination with the project
postman下载安装汉化及使用
Pycharm (1) the basic use of tutorial
Redisson报异常attempt to unlock lock, not locked by current thread by node id解决方案
PyQt5(一) PyQt5安装及配置,从文件夹读取图片并显示,模拟生成素描图像
Biotin hydrazide HCl|CAS:66640-86-6|生物素-酰肼盐酸盐
pnpm: Introduction
在 QT Creator 上配置 opencv 环境的一些认识和注意点
随机推荐
为什么都推荐使用wordpress, 而不是 phpcms 这些国内的CMS呢?
Biotin hydrazide HCl|CAS:66640-86-6|Biotin-hydrazide hydrochloride
next permutation
What is NoSQL?Databases for the cloud-scale future
redis-desktop-manager下载安装
R语言plotly可视化:使用plotly可视化模型预测真阳性率(True positive)TPR和假阳性率(False positive)FPR在不同阈值(threshold)下的曲线
UVM之sequence机制
Biotin-LC-Hydrazide|CAS:109276-34-8|生物素-LC-酰肼
(Note) AXIS ACASIS DT-3608 Dual-bay Hard Disk Array Box RAID Setting
“蔚来杯“2022牛客暑期多校训练营4
How to use postman
科技云报道:实现元宇宙,英伟达从打造基础建设平台开始
Application and case analysis of CASA model and CENTURY model
mysql 中 in 的用法
C语言_指针
Biotin - LC - Hydrazide | CAS: 109276-34-8 | Biotin - LC - Hydrazide
QT web development - Notes - 3
编程与哲学(2)——输出是为了更好的输入
etcd实现大规模服务治理应用实战
Installation and use of pnpm