【问题标题】:How does a computer tell the difference between a float binary values and an integer binary value?计算机如何区分浮点二进制值和整数二进制值?
【发布时间】:2015-09-12 17:31:33
【问题描述】:

当我注意到一些有趣的事情时,我正在研究一些二进制练习问题。计算机如何区分二进制值。例如二进制的 13 是 1101,而 0.8125 也是二进制的 1101。由于它们的二进制值相同,计算机如何知道哪个是哪个。或者如果我将它转换回以 10 为底,我怎么知道这个数字最初是 13 还是 0.8125?

【问题讨论】:

    标签: binary


    【解决方案1】:

    计算机不关心二进制值的“含义”,直到您指示它使用它。当你这样做时,你明确地“告诉”计算机是什么意思。

    【讨论】:

    • 这清楚了,谢谢大声笑。当我看到它时,我只是在那里看着我的双二进制方法。一开始我以为我实现错了,因为它是与 13 相同的二进制值。
    【解决方案2】:

    内存中任意位置的二进制值可以是任何东西(数字、程序指令、浮点数等)...程序必须知道在该位置期望什么类型。

    【讨论】:

      【解决方案3】:

      数据类型就是答案。 计算机查找数据类型。

      如果二进制值是1101,并且声明变量时提到的数据类型是整数,那么它将是13。如果提到的数据类型是float,那么它将是0.8125。如果提到的数据类型是 char,那么 13 就是字符的 ascii 值。

      希望你明白我的解释。

      【讨论】:

        猜你喜欢
        • 2012-06-10
        • 1970-01-01
        • 2018-10-21
        • 2010-10-03
        • 1970-01-01
        • 2018-08-08
        • 2017-12-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多