C语言中浮点数在内存中的存储方式
int data = 0xf4f3f2f1;
当中低位存放在编址小的内存单元,高位存放在编址高的内存单元
例如以下:
地址:0x8000 0x8001 0x8002 0x8003
数据: f1 f2 f3 f4
单精度浮点数用4字节,包含1位符号位s(整数为0,负数为1),8位指数位e。23位有效位f
浮点型使用的是科学计数法,比方十进制的12345能够表示为1.2345 * 10^4(表示10的4次幂)
用二进制表示为 1.1000000111001 * 2^13
所以计算机中用浮点数表示12345这个十进制应该是这种,s位为0,由于是正数。指数位为13+127=140(127为单精度浮点数偏移值,为了表示仅仅有小数部分的数)。有效位为1000000111001
计算的时候用 (-1)^s * 1.f * 2^(e-127) ,结果就是 1* 1.1000000111001 * 2^(140-127=13) 。和我们刚才表示的一样
还比方,十进制小数0.125转换为二进制小数0.001能够表示为 1* 1.0 * 2^(124-127=-3)
double,双精度浮点数有1位符号位、11位指数位和52位有效数
知道公式
n=(-1)^s*m*2^e
e=|E|-bias
bias = 2^(k-1)-1(k为E的位数)
m=|1.M|
知道12345在内存中的10进制表示以后
0x4640e400 = 0(100 0110 0)<100 0000 1110 0100 0000>
括号里的数字为|E| = 140 所以e=140-127=13
尖括号里的数字为m=|1.M|=|1.100000011100100|=1.506958008
ok,
代入公式n = (-1)^0*1.506958008*2^13=12345
转载于:https://www.cnblogs.com/liguangsunls/p/7040310.html
C语言中浮点数在内存中的存储方式相关推荐
- 转载--C语言:浮点数在内存中的表示
单精度浮点数: 1位符号位 8位阶码位 23位尾数 双精度浮点数: 1位符号位 8位阶码位 52位尾数 实数在内存中以规范化的浮点数存放,包括数符.阶码.尾数.数的精度取决于尾数的位数 ...
- 【C语言进阶】③探究浮点数在内存中的存储方式
文章目录 一.例题 二.浮点数在内存中存储方式 2.1国际标准IEEE(电气和电子工程协会)754规定: 2.2实际上,浮点数在内存的存储形式为: 2.3具体M和E是怎么算的呢? 三.题解 3.1刚开 ...
- 浮点数在内存中的表示
2011年4月9日10:09:19 c语言中的浮点数在内存中的表示(VC++编译器中): char:1个字节 short:2个字节 int:4字节 long:4字节 float:4字节(单精度) do ...
- c语言字母是怎么存储,C语言之数据在内存中的存储
C语言之数据在内存中的存储 在我们学习此之前,我们先来回忆一下C语言中都有哪些数据类型呢? 首先我们来看看C语言中的基本的内置类型: char //字符数据类型 short //短整型 int //整 ...
- C语言中数据在内存中的存储
要想了解数据在内存中的存储的话,首先应该了解数据的类型. 下面介绍C语言中数据类型: 1.C语言中的基本内置类型: char //字符数据类型 大小为1个字节 short //短整型 大小为2个字节 ...
- C/C++浮点数在内存中的存储方式
任何数据在内存中都是以二进制的形式存储的,例如一个short型数据1156,其二进制表示形式为00000100 10000100.则在Intel CPU架构的系统中,存放方式为 10000100(低 ...
- C/C++浮点数在内存中的存储方式《转》
那天有人在汇编群里有人问了一个 #include <iostream> #include <stdio.h> using namespace std; int main() { ...
- IEEE754标准: 浮点数在内存中的存储方式
一. 什么是IEEE754标准 我们知道, 计算机内部实际上只能存储或识别二进制. 在计算机中, 我们日常所使用的文档, 图片, 数字等, 在储存时, 实际上都要以二进制的形式存放在内存或硬盘中, 内 ...
- 浮点数在内存中的存储
我们已经介绍过整数在内存中的存储方式,那浮点数在内存中是怎样存储的呢? 先看一段代码: #include<stdio.h>int main() {int n = 9;float* pFlo ...
- 浮点数在内存中的存储——“C”
各位CSDN的uu们你们好呀,今天,小雅兰的内容是浮点数在内存中的存储,昨天我们已经写过了整型在内存中的存储,那么,浮点数在内存中是怎样存储的呢?现在,就让我们进入浮点数在内存中的存储的世界吧 常见的 ...
最新文章
- JAVA中字符串比较equals()和equalsIgnoreCase()的区别
- Navicat12及以上才能显示json数据
- ofstream清空文件内容_回收站被删除的文件怎么恢复 回收站清空了怎么恢复
- 固定背景图的高度,让宽度自适应
- 【三维路径规划】基于matlab A_star算法无人机三维路径规划【含Matlab源码 446期】
- Flink窗口-时间窗口
- 大数据培训(第一季) java基础-徐培成-专题视频课程
- 客户价值分析:RFM聚类分析原理
- Java 文件上传同时携带参数
- matlab simulink电感,一文教你快速学会在matlab的simulink中调用C语言进行仿真
- 396万奖金池!视觉特征编码、AI+无线通信两大赛道等你来战!助力元宇宙!
- 洛谷——P1348 Couple number(java实现)
- 一个普通码农的Linux之路
- java查询日期类的表,JAVA菜鸟入门篇 - 时间处理相关类实例:打印该月日期表 (29)...
- CSS3属性之text-overflow:ellipsis详解
- netty报Unknown channel option ‘TCP_NODELAY‘ for channel异常
- 云宇宙与云计算之间的关系,云服务器
- Squeeze-and-Excitation Networks论文翻译——中英文对照
- shopify修改导航
- 华中科技大学计算机学院领导,冯丹:华中科技大学计算机学院院长
热门文章
- PAT之算法/技巧:01背包
- lj245a引脚功能图_干货|教你如何看懂单片机时序图
- 百度搜索(URL)中汉字转为什么编码问题
- java技术架构选型方案报告.pdf,来啦,2020开源报告!
- android程序设计背景,android – 以可编程方式设置drawable作为背景
- java xml 空节点_java:利用xpath删除xml中的空节点
- 翻译:swift 5通过使用泛型进行高级异步操作Operation
- 翻译:Vim从入门到精通 Mac OS
- 如何设计实现一个证书加密签名工具包-极客大学架构师训练营(架构师 黄燧)
- 算法:回溯三 Combination Sum组合总数