32767这个数字有什么意义?
What is the significance of the number, 32767?
我意识到在某些编程语言中,随机数生成器会生成 0 到 32767 之间的默认值(例如,在 php 中,rand(); 会 return 一个介于 0 和 32767 之间的浮点数).这样的随机数有什么意义呢? (因为它不是 2 的幂或类似的任何特殊值。)
是2^15-1,所以16位有符号整数的最大值。
32767 + 1 是 2 的幂
数字的二进制表示使用 2 的幂。因此,在 4 位结构中,0101
是 2^0 x 1、2^1 x 0、2^2 x 1 和 2^3 x 0,即5.
MSB 用于有符号和无符号整数。
我猜,在 16 位实现中(在编写 C89 标准时仍然很常见)这是最大的有符号整数。
我意识到在某些编程语言中,随机数生成器会生成 0 到 32767 之间的默认值(例如,在 php 中,rand(); 会 return 一个介于 0 和 32767 之间的浮点数).这样的随机数有什么意义呢? (因为它不是 2 的幂或类似的任何特殊值。)
是2^15-1,所以16位有符号整数的最大值。
32767 + 1 是 2 的幂
数字的二进制表示使用 2 的幂。因此,在 4 位结构中,0101
是 2^0 x 1、2^1 x 0、2^2 x 1 和 2^3 x 0,即5.
MSB 用于有符号和无符号整数。
我猜,在 16 位实现中(在编写 C89 标准时仍然很常见)这是最大的有符号整数。