【发布时间】:2015-02-04 02:51:01
【问题描述】:
十进制数128,二进制是10000000。这不是8位吗?那么为什么字节的最大值是127呢?谢谢!!
【问题讨论】:
-
字节值是 0-255 无符号,或 -127 到 +127 有符号。
标签: memory size byte storage bit
十进制数128,二进制是10000000。这不是8位吗?那么为什么字节的最大值是127呢?谢谢!!
【问题讨论】:
标签: memory size byte storage bit
在二进制补码表示中,您还必须允许 负数。
8 位将为您提供 256 个不同的值,包括 -128 到 127。
00000000 - 01111111 0 to 127
10000000 - 11111111 -128 to -1 (or 128 to 255 for unsigned).
请注意,还有其他编码方案,例如一个的补码或符号/大小,它们的属性略有不同。这两个都有一个正和负零,所以范围是-127..127。
【讨论】:
计数是从零开始的 - 它从 0 开始。 因此 0 到 127 为 128 项,最大值为 127。
请注意,这假设您在谈论带符号的 8 位字节/整数。
对于无符号 8 位字节/整数,可以表示的最大值为 255(0-255 为 256 项)。
【讨论】: