Skip to main content

Cos'è una tabella dei simboli?

Una tabella dei simboli viene utilizzata dai sistemi informatici come un modo per centralizzare le informazioni e ridurre le dimensioni dei programmi.Queste tabelle funzionano come la chiave per un codice segreto;Un simbolo o una stringa viene posizionato accanto a un altro, generalmente molto più grande, informazioni.Quando un programma legge un simbolo associato alla tabella dei simboli, il programma fa riferimento alla tabella e prende le informazioni piuttosto che il simbolo.Ciò consente a grandi informazioni o strutture comunemente ripetute di avere solo una voce, riducendo le dimensioni complessive del programma.

Il concetto dietro una tabella dei simboli è molto semplice.Una singola tabella contiene una vasta gamma di informazioni utilizzate da un programma, ognuna con la propria entrata e un simbolo unico associato.Queste informazioni potrebbero essere stringhe di codice, informazioni sul debug, posizioni di memoria, letteralmente tutto ciò che il programma potrebbe utilizzare per funzionare.Piuttosto che includere tali informazioni all'interno del programma, il codice fa semplicemente riferimento alla tabella usando il suo simbolo unico.

Ci sono due luoghi in cui è comune una tabella dei simboli: nella compilazione del codice in programmi e nel collegamento delle librerie utilizzate da più programmi.Se utilizzato nei programmi, la tabella effettiva viene in genere assorbita nel programma o trasformata in una libreria condivisa al momento della compilazione.È insolito lasciare separato l'elenco, poiché la modifica dell'elenco potrebbe avere conseguenze estreme per il programma.Anche quando la tabella viene trasformata in questo processo, è sempre la stessa cosa di base, è incluso solo insieme ad altri codice.

Quando una tabella dei simboli viene utilizzata in una libreria di collegamento, le possibilità per come può funzionare espandersi drasticamente.Una libreria di collegamento è una serie di informazioni che si presume siano disponibili per un programma in qualsiasi momento.Queste biblioteche sono spesso condivise da un sistema operativo o da una famiglia di programmi correlati che sono tutti realizzati dalla stessa società.

Ciascuna di queste biblioteche è piena di informazioni su determinati argomenti.Una libreria può contenere una vasta gamma di programmazione per disegnare i bordi della finestra dell'interfaccia utente del sistema operativo mentre un'altra può contenere informazioni su dove un gruppo specifico di programmi memorizza le informazioni in memoria.Poiché una libreria di collegamento può contenere tale assortimento casuale di informazioni, le tabelle dei simboli sono spesso incluse con esse.

Incorporando una tabella dei simboli in un linker, è possibile condividere i simboli attraverso una serie di programmi.Ciò consente a più programmi di accedere agli stessi dati in qualsiasi momento.Se un gran numero di programmi richiedono tutti le stesse informazioni, incluso all'interno di una tabella dei simboli in una libreria riduce notevolmente le dimensioni del gruppo di programmi totali.