十进制浮点数转IEEE754标准的32浮点数的二进制格式
十进制浮点数转IEEE754标准的32浮点数的二进制格式
在IEEE754标准中,float所占的32位分为符号位(S)1位、阶码(E)8位、尾数(M)23位。
符号位为1、0两种,1表示正数,0表示负数。
阶码这里会有一个127的偏移量。将十进制数表示为二进制数后,转化为小于2的数乘2的n次方形式,将127与指数n相加后,转换为二进制,得到的二进制数即为阶码。
尾数即为小数点后的数,位数不足23位,则加0凑成23位。
1.十进制5.75
转化为二进制:101.11,进而转化为1.0111*2^2,127+2=129,E=10000001,S=1,其IEEE754标准的32浮点数的二进制格式为0 10000001 01110000000000000000000
2.十进制161.875
转化为二进制:10100001.111,进而转化为1.0100001111*2^7,127+7=134,E=10000110,S=1,其IEEE754标准的32浮点数的二进制格式为0 10000110 01000011110000000000000
3.十进制-0.0234375
转化为二进制:-0.0000011,进而转化为-1.1*2^(-6),127-6=121,E=01111001,S=0,其IEEE754标准的32浮点数的二进制格式为1 01111001 10000000000000000000000
检验一下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?