我刚刚注意到 MS Excel 的列数从 增加到ZZ
了XFD
,即 16,384 列。这个特定值的意义何在?为什么 MS 没有进一步增加到ZZZ
?为什么他们停在XFD
?
答案1
16,384 的意义在于您可以拥有从 0 到 16383 的内部列索引值。让我们看看 16383 的二进制表示是什么:
0011 1111 1111 1111
它比 16 位字少 2 位。1 位可能是绝对/相对标志,剩下 1 位用于其他用途,整个内容整齐地打包在一个字中。
行号类似:最大索引值 1,048,575 如下:
0000 0000 0000 1111 1111 1111 1111 1111
对我这个程序员来说,这看起来像是一个 32 位字,其中底部 20 位作为行索引,顶部 12 位用于其他用途。
答案2
16,384 是 2^14。
在列数扩展到16384的同时,行数也扩展到了一百万以上,即1048576行。
这些数字分别与 2 的 14 次方 (2^14) 和 2 的 20 次方 (2^20) 相关,因此是最初以字节为单位构建的计算机内存单元规模的自然(逻辑)进展。
随着计算机内存的增加,可以加载和评估内存中更多数量的行和列以进行计算,因此 Excel 网格可以突破早期版本的限制。
当然,这些行数和列数的最大值是由设计 Excel 工作方式的人选定的,随着计算机内存的增长,这些最大值也成为可能。他们可以选择不同的数字,但自 2007 版以来,Excel 中的行数和列数都是以 2 的幂为根的。