美文网首页
float数据在内存中的存储方法

float数据在内存中的存储方法

作者: dacheng | 来源:发表于2016-04-27 15:33 被阅读199次

参考文档:IEEE754 浮点数
参考文档:百度文科
参考文档:资料

浮点型变量在计算机内存中占用4字节(Byte),即32-bit。遵循IEEE-754格式标准。一个浮点数由2部分组成:尾数m(或称底数)和指数e。
±mantissa × 2exponent
(注意,公式中的mantissa 和 exponent使用二进制表示)

  • 尾数部分 使用二进制数来表示此浮点数的实际值。尾数部分实际是占用24-bit的一个值,由于其最高位始终是1 ,所以最高位省去不存储,23-bit的位置实际表示了24-bit的二进制数字。
  • 指数部分 占用8-bit的二进制数,可表示数值范围为0-255。 但是指数应可正可负,所以IEEE规定,此处算出的次方须减去127才是真正的指数。所以float的指数可从 -127到127(阶码不能达到1111 1111,IEEE规定,当编译器遇到阶码为0XFF时,即调用溢出指令)。
  • 符号位 用来指示浮点数的正负,当符号位是1时,为负数,符号位是0时,为正数。
float数据在内存中的表示

现在来计算float类型数据表示的最大值。

符号位 0 (代表正数)
指数位 1111 1110 (十进制值为254,代表阶码127)
尾数为 1111 1111 1111 1111 1111 111(转换后的尾数位1.11111111111111111111111)

实际代表的值 = + 转换后的尾数位 右移 阶码位
即1.11111111111111111111111右移128位 这个值为
340282346638528859811704183484516925440
或约为3.4028235E+38

相关文章

  • float数据在内存中的存储方法

    参考文档:IEEE754 浮点数参考文档:百度文科参考文档:资料 浮点型变量在计算机内存中占用4字节(Byte),...

  • PlayerPrefs的常用方法

    PlayerPrefs的常用方法 SetFloat存储在float类型的数据 SetInt 存储在int类...

  • float数据在内存中是怎么存储的

    float类型数字在计算机中用4个字节存储。遵循IEEE-754格式标准:一个浮点数有2部分组成:底数m和指数e ...

  • Python学习笔记3 数据存储和变量

    为什么会使用计算机? 存储数据,处理数据 数据存储位置?数据存在内存中 内存:用于暂时存储被处理的数据内存中数据的...

  • C语言马拉松_01

    变量的理解 C语言中常规变量类型 理解以上数据类型的基本作用 以上数据类型在内存中的存储方式 理解float、do...

  • zookeeper源码分析(6)-数据和存储

    在Zookeeper中,数据存储分为两部分:内存数据存储和磁盘数据存储。本文主要分析服务器启动时内存数据库的初始化...

  • 4.数组、链表、散列表

    数据结构就是数据在内存中存储的一种方式,如果数据在内存中的存储是地址连续的,比如内存中从0到9的位置就用来存储1,...

  • 听说你了解数据类型?

    学过C++、C或者Java的程序员都知道,存储在内存中的数据是有类型的,C中用int表示整型,float表示浮...

  • 基本数据格式在内存中存储的格式

    1. 基本数据格式在内存中存储的格式[1] 1.1 浮点数类型(Float&Double) C语言和C#语言中,对...

  • 5. Java之堆与栈

    堆和栈都是 Java 中常用的存储结构,都是内存中存放数据的地方:在方法中定义的基本类型变量和引用类型变量,其内存...

网友评论

      本文标题:float数据在内存中的存储方法

      本文链接:https://www.haomeiwen.com/subject/jlucrttx.html