Qual è il significato del numero di colonne (16384) in MS Excel 2016?


29

Ho appena notato che il conteggio delle colonne MS Excel è aumentato da ZZ a XFD, cioè 16.384 colonne. Qual è il significato di questo particolare valore? Perché la MS non è andata oltre, fino a ZZZ? Perché si sono fermati a XFD?


1
Non esattamente la risposta alla tua domanda, ma MS elenca qui vari limiti excel - support.office.com/en-us/article/...
matrix

2
È una decisione progettuale arbitraria per mantenere la complessità entro limiti ben definiti. Tecnicamente, l'unico limite sono le risorse disponibili (memoria, CPU).
Daniel B

8
Come @teylyn ha spiegato nella sua risposta, le potenze di 2 sono scelte comuni in informatica, tuttavia esattamente perché MS ha scelto questo valore probabilmente non è possibile rispondere qui, quindi voto a chiudere questa domanda come opinione primaria basata.
Máté Juhász


3
Vale la pena notare che il limite massimo di colonne è stato almeno di 16.384 Excel 2007
Steven M. Vascellaro

Risposte:


34

Il significato di 16.384 è che puoi avere valori di indice di colonna interni da 0 a 16383. Diamo un'occhiata a ciò che 16383 è in binario:

0011 1111 1111 1111

È a 2 bit di una parola a 16 bit. È probabile che 1 bit sia un flag assoluto / relativo, che lascia 1 bit per qualche altro scopo, e l'intera cosa si impacchetta ordinatamente in una singola parola.

I numeri di riga sono simili: un valore di indice massimo di 1.048.575 è questo:

0000 0000 0000 1111 1111 1111 1111 1111

Per me, come programmatore, si assomiglia a una parola a 32 bit, con i 20 bit inferiori come indice di riga e i 12 bit superiori utilizzati per qualcos'altro.


1
Questo ha più senso per me
Ooker

9
1.048.576 è la prima potenza di 2 che è più di un milione ... quindi ora puoi avere "più di un milione di colonne"
HorusKol

6
e 16384 è la prima potenza di 2 che è più di diecimila. Quindi questa potrebbe essere la ragione per cui l'OP sta cercando.
ris8_allo_zen0

56

16.384 è 2 ^ 14.

Nello stesso momento in cui le colonne sono state espanse a 16.384, le righe sono state espanse a oltre un milione, ovvero 1.048.576.

Questi numeri si riferiscono a due alla potenza di 14 (2 ^ 14) e due alla potenza di 20 (2 ^ 20), rispettivamente, così come le progressioni naturali (logiche) sulla scala delle unità di memoria del computer che erano inizialmente strutturate in byte .

Con l'aumentare della memoria del computer, è stato possibile caricare e valutare un numero maggiore di righe e colonne nella memoria per i calcoli, quindi la griglia di Excel potrebbe crescere rispetto ai limiti delle versioni precedenti.

Questi numeri massimi per righe e colonne sono stati selezionati dalle persone che progettano come funziona Excel, ovviamente, e sono diventati possibili con la crescente memoria del computer. Potrebbero aver scelto numeri diversi, ma il numero di righe e colonne in Excel dalla versione 2007 è radicato nella potenza di 2.


2
Certo, ma perché non 2 ^ 16 e 2 ^ 32 (quindi un byte e una parola)?
Ajasja

12
@Ajasja Avrai bisogno di chiedere al team di sviluppo di Excel su questo. Ho detto che avrebbero potuto scegliere numeri diversi nella mia risposta. Ho solo spiegato da dove viene il pattern, non perché è stata scelta una certa grandezza del pattern.
teylyn

14
In realtà, come Microsoft Excel di Microsoft Excel, sei in una posizione molto migliore per chiedere al team di sviluppo di Excel questa domanda, ad esempio, io stesso :) Ancora un +1.
Ajasja

5
Nota: la maggior parte della codifica excel riguarda la rappresentazione interna sulle formule: 2 ^ 16 non è pratico per i numeri interi a 16 bit: Excel deve memorizzare anche il posizionamento relativo, quindi entrambi i numeri positivi e negativi. Forse uno dei bit è usato come flag (single / interval), quindi il numero totale di colonne è stato adattato
Giacomo Catenazzi

1
@GiacomoCatenazzi Il posizionamento relativo funzionerebbe bene senza un bit di segno dedicato se si considera solo un numero qualsiasi che porta l'ultima colonna a essere negativo.
Random832
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.