电子技术论坛

 找回密码
 快速注册

QQ登录

只需一步,快速开始

搜索
下载方法|用单线程|避免多扣帖子规范|求助必读|发帖建议积分策略|勋章介绍|新人必读获取金币|推广论坛|出售帖子基本礼节|致会员信|版规总则
禁涉政治|反对低俗|举报专帖征集相片|留下足迹|推荐精华上传附件|制作分卷|使用网盘禁发qq群|恶意灌水|纯表情帖加入团队|监督机制|安全上网
查看: 87|回复: 2

备忘录:浮点数在内存的存储方式

[复制链接]
发表于 7 小时前 来自手机 | 显示全部楼层 |阅读模式
RT809HSE编程器

注册家电维修技术论坛,与同行畅聊维修技术,享更多技术论坛功能。

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
本帖最后由 1363822353 于 2026-3-17 11:49 编辑

float占内存32,double占64位
一,先将浮点数转换成二进制数,整数部份是除2取余逆序排列,小数部份是乘2取整顺序排列。
二,将二进制数用指数形式表示,表示为1.xx..乘以2的多少次幂。
三,内存的最高一位表示正负号,正为0负为1。
四,接着的八位存放float的指数(double指数占十一位),由于指数有正数与负数,统一规定加上存储位数的中间值,float是八位加中间值127,double是11位加中间值1023。
五,最后是有效数字,由于有效数字恒为1.xx...的形式,前面的1可以不用存储,取出数字时记得再加上1就行了,这样就可以节省一位存储空间,有效数字位float是23位,double是52位。
六,浮点数在内存中存储的形式是;
   (-1)^S+(E+127or1023)+(M-1)
其中S是符号位,1或者0。E是指数值,有正有负。M是有效数字。
七,最后说一下原码反码和补码,原码是十进制直接转换过来的二进制数,反码是原码按位取反,补码是在反码最后一位加上1。
发表于 7 小时前 | 显示全部楼层
画图记忆更好
发表于 4 小时前 | 显示全部楼层
RT809HSE编程器
感谢分享~
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|家电维修技术论坛 ( 鄂ICP备09003585号-2 )

GMT+8, 2026-3-17 18:25 , Processed in 0.048885 second(s), 4 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

CopyRight © 电子技术论坛
电子邮箱:8794149@qq.com | 联系 QQ:3081868839 | 官方网址:www.dzdu.com

Qiji. All Rights Reserved


服务条款 | 站长声明

Wuhan Qiji Technology Co., Ltd.武汉奇迹科技有限公司版权所有


鄂ICP备09003585号-2鄂公网安备42010602000420号

快速回复 返回顶部 返回列表