Qual é o significado do número de colunas (16384) no MS Excel 2016?


29

Acabei de notar que a contagem de colunas do MS Excel aumentou de ZZpara XFD, ou seja, 16.384 colunas. Qual é o significado desse valor específico? Por que a MS não foi além ZZZ? Por que eles pararam XFD?


1
Não exatamente responder à sua pergunta, mas listar MS várias limitações excel aqui - support.office.com/en-us/article/...
matriz de

2
É uma decisão arbitrária do projeto manter a complexidade dentro de limites bem definidos. Tecnicamente, o único limite são os recursos disponíveis (memória, CPU).
Daniel B

8
Como @teylyn explicou em sua resposta, potências de 2 são escolhas comuns em informática, no entanto, exatamente por que a MS escolheu esse valor provavelmente não é possível responder aqui, por isso estou votando para encerrar esta questão com base na opinião primária.
Máté Juhász


3
É importante notar que o limite máximo da coluna tem sido 16.384 desde pelo menos Excel 2007
Stevoisiak

Respostas:


34

O significado de 16.384 é que você pode ter valores de índice de coluna interna de 0 a 16383. Vejamos o que 16383 é em binário:

0011 1111 1111 1111

Falta 2 bits para uma palavra de 16 bits. É provável que 1 bit seja um sinalizador absoluto / relativo, que deixa 1 bit para outra finalidade, e a coisa toda é organizada em uma única palavra.

Os números das linhas são semelhantes: um valor máximo de índice de 1.048.575 é este:

0000 0000 0000 1111 1111 1111 1111 1111

Para mim, como programador, parece que uma palavra de 32 bits está sendo usada, com os 20 bits inferiores como índice de linha e os 12 bits principais usados ​​para outra coisa.


1
Isso faz mais sentido para mim
Ooker

9
1.048.576 é a primeira potência de 2 que é mais do que um milhão ... então agora você pode ter "mais de um milhão de colunas"
HorusKol

6
e 16384 é a primeira potência de 2 com mais de dez mil. Portanto, esse pode ser o motivo pelo qual o OP está procurando.
ris8_allo_zen0

56

16,384 é 2 ^ 14.

Ao mesmo tempo em que as colunas foram expandidas para 16.384, as linhas foram expandidas para mais de um milhão, ou seja, 1.048.576.

Esses números se referem a dois à potência de 14 (2 ^ 14) e dois à potência de 20 (2 ^ 20), respectivamente, assim como as progressões naturais (lógicas) na escala de unidades de memória de computador que foram inicialmente estruturadas em bytes .

À medida que a memória do computador aumentava, era possível carregar e avaliar um número maior de linhas e colunas na memória para cálculos, para que a grade do Excel pudesse crescer a partir das limitações das versões anteriores.

Esses números máximos para linhas e colunas foram selecionados pelas pessoas que projetam como o Excel funciona, é claro, e se tornaram possíveis com o aumento da memória do computador. Eles poderiam ter escolhido números diferentes, mas o número de linhas e colunas no Excel desde a versão 2007 está enraizado no poder de 2.


2
Claro, mas por que não 2 ^ 16 e 2 ^ 32 (então um byte e uma palavra)?
11287 Ajasja

12
@ Ajasja Você precisará perguntar à equipe de desenvolvimento do Excel sobre isso. Eu disse que eles poderiam ter escolhido números diferentes na minha resposta. Expliquei apenas de onde vem o padrão, e não por que uma certa magnitude do padrão foi escolhida.
teylyn

14
Na verdade, como MVP do Microsoft Excel, você está em uma posição muito melhor para fazer essa pergunta à equipe de desenvolvimento do Excel, por exemplo: eu mesmo :) Ainda é +1.
11287 Ajasja

5
Nota: a maioria da codificação do Excel é sobre representação interna em fórmulas: 2 ^ 16 é impraticável para números inteiros de 16 bits: O Excel precisa armazenar também o posicionamento relativo, portanto, números negativos e positivos. Possivelmente um dos bits é utilizado como bandeira (intervalo / única), então o número total de colunas foi adaptada
Giacomo Catenazzi

1
@GiacomoCatenazzi O posicionamento relativo funcionaria bem sem um bit de sinal dedicado se você considerasse negativo qualquer número que o levasse além da última coluna.
Random832
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.