webdevqa.jp.net

MS Excel 2016の列数(16384)の意味は何ですか?

MS Excelの列数がZZからXFD、つまり16,384列に増えたことに気付きました。この特定の値の意味は何ですか?なぜMSは、さらにZZZまで進んでいなかったのでしょうか。なぜ彼らはXFDでやめたのですか?

29
Karth

16,384の重要な点は、0から16383までの内部カラムインデックス値を持つことができるということです。16383がバイナリであるものを見てみましょう。

0011 1111 1111 1111

16ビットWordの2ビット不足です。 1ビットは他の目的のために1ビットを残す絶対的/相対的なフラグである可能性が高く、そして全体が1つのWordにきれいに詰め込まれています。

行番号は似ています。最大インデックス値1,048,575がこれです。

0000 0000 0000 1111 1111 1111 1111 1111

私にとっては、プログラマとしては、32ビットのWordが使用されているように見えます。下位20ビットが行インデックス、上位12ビットが他のものに使用されています。

34
David

16,384は2 ^ 14です。

列が16,384に拡張されるのと同時に、行は100万以上、すなわち1,048,576に拡張された。

これらの数はそれぞれ2の14乗(2 ^ 14)および2の20乗(2 ^ 20)に関係しているので、最初はバイト単位で構成されていたコンピュータメモリユニットの規模での自然な(論理的な)進行。

コンピュータのメモリが増えるにつれて、計算のためにメモリ内のより多くの行数と列数をロードして評価することが可能になりました。そのため、Excelグリッドは以前のバージョンの制限から大きくなる可能性があります。

行と列のこれらの最大数は、Excelがどのように機能するかを設計する人々によって選択されたものであり、コンピュータメモリが増えるにつれて可能になりました。異なる数を選択することもできますが、バージョン2007以降のExcelの行数と列数は2の累乗に基づいています。

56
teylyn