【问题标题】:Why can a short only hold 65,536 possible values?为什么空头只能持有 65,536 个可能的值?
【发布时间】:2011-10-30 22:34:21
【问题描述】:

我知道,短整数可以有 65,536 个可能的整数,但为什么不能有 255,256 个可能的值(0 到 255,255 无符号)?我看到你可以这样做:

有人已经想到了吗?为什么不使用?

【问题讨论】:

  • 每个字节可以有 256 个不同的值 - 2 个字节的不同值的总数 = 256*256 = 65536

标签: performance integer storage memory-efficient


【解决方案1】:

那行不通。
你会如何存储254,300

【讨论】:

    【解决方案2】:

    因为是两个字节,256 * 256 = 65536。

    【讨论】:

      【解决方案3】:

      第一个字节有 256 个选项,第二个字节有 256 个。总和:256 乘以 256,即 65,536。

      如果您建议您可以以这种方式在 0 到 255,255 范围内写入任何 十进制,请记住您不能写入诸如 123,456 之类的数字,因为 456 不在 0 到 255 范围内。

      (如果你用二进制做整个事情,那么它会起作用。你会得到正确的答案。)

      【讨论】:

        【解决方案4】:

        您将无法在您的方案中表示数字 500、1,783 或 63,443 以及许多其他数字。仍然会有 65,536 = 2^16 个唯一的位模式,因此数字,你可以在你的方案中表示......所以它会清楚地引入间隙,并且它会引入的三个间隙包含上面提到的三个数字。

        【讨论】:

          【解决方案5】:

          既然不是在1000的基础上! 256 * 256 = 65,536

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2014-09-20
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-07-06
            • 2018-06-29
            相关资源
            最近更新 更多