首页 > 其他分享 >IEEE 754标准中浮点数表示

IEEE 754标准中浮点数表示

时间:2023-10-28 11:25:48浏览次数:47  
标签:表示 754 尾数 浮点数 符号 IEEE 十进制 位为

根据 IEEE 754 标准,浮点数的表示公式为:

\[f = (-1)^s * 2^e * 1.f \]

s、e、f 分别是浮点数的符号位、指数位和尾数位。它们可以通过以下方法获得:
符号位s,符号位是浮点数的最高位,1 表示正数,0 表示负数。
指数位e,指数位从第 9 位开始,共 8 位。指数位表示小数点的位置。
尾数位f,尾数位从第 1 位开始,共 23 位。尾数位表示小数部分。

具体来说,可以通过以下步骤获得 s、e、f:

将浮点数的二进制表示转换为十进制表示。
将十进制表示的最高位取出,作为符号位。
将十进制表示的后 23 位作为尾数。
将十进制表示的倒数第 9 位取出,作为指数。

例如,一个浮点数的二进制表示为:
0 10000000 1111111111111111
将其转换为十进制表示为:
1.1111111111111111 * 2^-128
其中,符号位为 0,指数位为 -128,尾数位为 1.1111111111111111。

当然,也可以使用计算机语言中的内置函数来获得 s、e、f。例如,在 Python 中,可以使用以下函数来获得 s、e、f:

def get_s(f):
    return f >> 31

def get_e(f):
    return (f >> 23) & 0xFF

def get_f(f):
    return f & 0x7FFFFF

标签:表示,754,尾数,浮点数,符号,IEEE,十进制,位为
From: https://www.cnblogs.com/xuxian007/p/17793823.html

相关文章

  • P9754 [CSP-S 2023] 结构体 题解
    考前内心OS:“CCF不会出大模拟吧(((”。前置声明辅助函数:偏移量考虑一个结构体的偏移量。已知首个空地址\(\mathrm{address}\)和该结构体的对齐要求\(\mathrm{align}\),则该结构体正确的起始地址为\(\mathrm{\lceiladdress/align\rceil\timesalign}\)。i64shiftToAl......
  • P9754 [CSP-S 2023] 结构体 题解
    前言在考场上调了2h+还没调出来,并且T4也没来得及做。希望看到这段文字的你能避免这样的悲剧。正文题目要求动态创建类型,于是我用结构体代表一个struct(禁止套娃),要新建就new出来一个。(最后也没delete)structObj{typnamtnam;lllen,align;std::map<std:......
  • 浮点数表示
    表示N=尾数*基数^指数可以理解成十进制的0.00001=1×10-5 指数也可以称为阶码,一般使用移码表示(这是个正数,有阶符表示正负) 基数在计算机中无需存储,就是2 尾数一般使用补码表示(这个也是正数,有数符表示正负) 浮点数的比较与运算:1.运算方式:对阶-->尾数计算-->......
  • python基础-数据类型(none、集合、字典、浮点数)
    目录1.了解hash2.None类型3.集合(set)3.1定义3.2独有功能3.3公共功能3.4转换3.5其他3.5.1集合的存储原理3.5.2元素必须可哈希3.5.3集合查找元素速度快3.5.4对比和嵌套集合练习题4.字典(dict)4.1定义4.2独有功能练习题4.3公共功能4.4转换4.5其他4.5.1存储原......
  • T175410 分成互质组
    T175410分成互质组因为n很小,直接暴力枚举两种状态:1.放入桶中。如果当前数字可以放入某个桶中,放入。如果可以放入多个桶,先一个一个来,全部枚举。注意:枚举完之后记得恢复现场2.新开辟一个桶。如果不能放入,则开辟一个桶。如果可以放入,也可以选着不放入,再新开辟一个桶:防止遗留......
  • IEEE754浮点数
    将十进制数转化为单精度浮点数方法:除2取余,直到需要的精度为止5.7501000000101110000000000000000000161.87501000011001000011110000000000000-0.023437510111100110000000000000000000000  在http://www.weitz.de/ieee/中验证: ......
  • 关于浮点数的一些小知识点
    转载自:C++标准cout输出精度解析double和float的区别1.double是双精度浮点数,内存占8个字节,有效数字16位,表示范围是-1.79E+308~1.79E+308。float是单精度浮点数,内存占4个字节,有效数字8位,表示范围是-3.40E+38~3.40E+38。2.两者处理速度不同,CPU处理float的速度比处理double快。......
  • IEEE754 浮点数
    十进制数5.75161.875-0.02343755.75转单精度浮点数整数部分5/2=2...12/2=1...01/2=0...1小数部分0.752=1.50...10.502=1.00...1101.1100000000=1.011100000000*2^2S=0E=2M=011100000000故其单精度浮点数为:010000001011100000000161.875转单精度浮点数......
  • IEEE754浮点数
    任务详情1.参考https://www.cnblogs.com/oxspirt/p/7234024.html,把十进制数5.75,161.875,-0.0234375的单精度浮点数,并用http://www.weitz.de/ieee/验证你转化是否正确。2.使用C语言验证你的转化是否正确作业正文5.75~01000000101110000000000000000000161.875~010000110010000111......
  • IEEE754 浮点数
    作业答案十进制二进制5.7501000000101110000000000000000000161.87501000011001000101110000000000000-0.023437510111100110000000000000000000000其中5.75:S=0E=10000001M=01110000000000000000000161.875:S=0E=10000110M=010......