为什么空头只能持有65,536个可能值?

时间:2011-10-30 22:34:21

标签: performance integer storage memory-efficient

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

2 byte integer

有人已经想过这个吗?为什么不使用它?

5 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:1)

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

答案 2 :(得分:1)

第一个字节有256个选项,第二个字节有256个选项。总共:256次256,或65,536。

如果你建议用这种方式写0到255,255范围内的任何十进制,记住你不能写123,456这样的数字,因为456不在0到255范围内。

(如果你用二进制做了整件事,那就行了。你得到了正确答案。)

答案 3 :(得分:0)

在您的计划中,您将无法代表500,1,783或63,443中的数字,其中包括许多其他数字。仍然会有65,536 = 2 ^ 16个独特的比特模式,因此数字,你可以在你的方案中代表...所以它会明显地引入差距,它将引入的三个差距包含上面提到的三个数字。

答案 4 :(得分:0)

因为它不在1000的基础上! 256 * 256 = 65,536