Types IEEE-754浮点数的工作原理
假设我有这个:Types IEEE-754浮点数的工作原理,types,floating-point,ieee-754,Types,Floating Point,Ieee 754,假设我有这个: float i = 1.5 在二进制中,此浮点表示为: 0 0111111 1000000000000000000000 我将二进制文件分解,以表示“有符号”、“指数”和“分数”块 我不明白的是这怎么代表1.5 减去偏差(127-127)后,指数为0,隐式前导的分数部分为1.1 1.1是如何以零=1.5来缩放的?二进制中的1.1是1+。5=1.5是以十进制(以10为基数)为基础的:643.72是: (6*102)+ (4*101)+ (3*100)+ (7*10-1)+ (2
float i = 1.5
在二进制中,此浮点表示为:
0 0111111 1000000000000000000000
我将二进制文件分解,以表示“有符号”、“指数”和“分数”块
我不明白的是这怎么代表1.5
减去偏差(127-127)后,指数为0,隐式前导的分数部分为1.1
1.1是如何以零=1.5来缩放的?二进制中的1.1是1+。5=1.5是以十进制(以10为基数)为基础的:643.72是:
- (6*102)+
- (4*101)+
- (3*100)+
- (7*10-1)+
- (2*10-2)
- (1*20)+
- (1*2-1)
101.00101
| | | |
| | | +- 1/32
| | +--- 1/8
| +------- 1
+--------- 4
相当于:
4 + 1 + 1/8 + 1/32
或:
你想看这个-
实际标准是尾数基本上是按指数移动的
3 in binary is 0011
3>>1 in binary, equal to 3/2, is 0001.1
你的意思是“符号”、“指数”和“有效位”。哈,我不是想用这些术语。问题的标题应该是“如何理解二进制浮点数”或类似的东西-实际上,它与CUpdated标题无关,以反映C根本不确定编码的事实,hatorade确实在询问IEEE-754格式。所有这些标准的实际PDF通常可以通过谷歌搜索找到……维基百科页面不是标准,也不应该这样使用。这就是(我认为)Potatoswatter的观点。将IEEE站点添加到实际标准中——第一个站点用更通俗的术语解释了它。我的观点也是,它们可以免费找到。我曾想过提供一个链接,但那可能是不明智的:v(.谢谢,@Tyler,那看起来和听起来都好多了。
3 in binary is 0011
3>>1 in binary, equal to 3/2, is 0001.1