Floating point IEEE-754浮点转换

Floating point IEEE-754浮点转换,floating-point,binary,Floating Point,Binary,刚开始一个新类,我很难掌握浮点转换。我们遇到了一个美元金额的问题,然后将其转换为二进制,然后转换为十六进制,再转换为浮点。如果我愿意,我可以在计算器上在线找到答案,但我需要帮助理解分数的逻辑性 对于ex:842到二进制(没有分数)我可以做如下操作,您如何转换272.10之类的东西,或者类似于这些行的任何东西?那么如何使用浮点呢 我的印象是,你取2,7,2,1,0,然后在二进制值图表中运行,对应于00100111100100010000。。但这并不是最终答案的全部 社区帮助了我很多的妖术,并使之容

刚开始一个新类,我很难掌握浮点转换。我们遇到了一个美元金额的问题,然后将其转换为二进制,然后转换为十六进制,再转换为浮点。如果我愿意,我可以在计算器上在线找到答案,但我需要帮助理解分数的逻辑性

对于ex:842到二进制(没有分数)我可以做如下操作,您如何转换272.10之类的东西,或者类似于这些行的任何东西?那么如何使用浮点呢

我的印象是,你取2,7,2,1,0,然后在二进制值图表中运行,对应于00100111100100010000。。但这并不是最终答案的全部


社区帮助了我很多的妖术,并使之容易,希望掌握这一点。感谢您的帮助。

这是一个扩展的评论,而不是一个完整的答案,只是说明“我觉得您采用了2,7,2,1,0,并在二进制值图表中运行它,对应于00100111100100010000……但这不是最终答案的全部内容。”

如果您已经能够将十进制842转换为二进制,那么您一定已经注意到十进制和二进制都是位置系统。“8”占总价值的八百分之一,而不仅仅是八分之一,因为它的位置

同样,小数点272.10中的“1”占总值的十分之一。要进行转换,您不仅必须将数字映射到它们各自的二进制表示形式,还需要将它们的权重映射为基数的幂,10表示十进制,2表示二进制


不幸的是,十分之一不能精确地表示为终止二进制分数,因此272.10的任何基数2表示都必须是近似值。这与将1/3表示为终止小数的问题相同。

浮点数的存储方式与整数(整数)的存储方式非常不同。通常存储符号、指数和尾数。Wikipedia对此有一个有用的部分:您提到的格式,即
00100100100100010000…
通常称为BCD(二进制编码数字),与浮点不同。