关于数字
在计算机中数字本身并没有“位数”概念,它的位数取决于存储它的变量类型。
如果 0 是 64 位的,它的二进制表示是:
c++
0000000000000000000000000000000000000000000000000000000000000000 (共 64 位)如果 123456 是 64 位的,它的二进制表示是:
c++
0000000000000000000000000000000000000000000000000000011110000000 (共 64 位)但如果存储在 32 位的变量里,它的二进制表示就只有 32 位:
c++
000000000000000000011110000000 (共 32 位)总结
- 数字本身没有固定的“位数”,关键是 它存储在什么类型的变量里。
- 如果 0 或 123456 存储在 64 位整数变量里,它们就是 64 位的。
- 如果存储在 32 位变量里,它们就是 32 位的。
- 计算机使用 64 位存储的数字,并不意味着它占满 64 位,前面的高位可能都是 0(对正数而言)。