Cosè un preprocessore?

Generalmente, quando qualcuno si riferisce a un processore in informatica, intende una sorta di chip di silicio che esegue calcoli. La P in CPU, GPU, APU, NPU, e molte altre forme di chip logici, sta per “Processing”, cioè Central Processing Unit. Ciascuno di essi è un tipo specifico di processore, ottimizzato per la sua specifica funzione. Un preprocessore, tuttavia, non ha nulla a che fare con processori fisici come la CPU o la GPU. Invece, è un termine di programmazione, specificamente relativo ai linguaggi compilati.

Cos'è un compilatore?

Un compilatore è un software che compila uno specifico linguaggio di programmazione in codice macchina. Tutti i linguaggi di programmazione devono essere convertiti in codice macchina, poiché le istruzioni leggibili dall'uomo che compongono i linguaggi di programmazione utilizzabili non sono direttamente eseguibili dal computer. Alcuni sono progettati per essere interpretati al volo quando il codice viene eseguito. Questo approccio è molto flessibile e rende facile apportare piccole modifiche. Molti altri linguaggi di programmazione, tuttavia, devono essere compilati per poter essere eseguiti. Nei piccoli programmi, questo non richiede necessariamente molto tempo. Con programmi più grandi, tuttavia, la compilazione può richiedere minuti o addirittura ore.

Allora perché vorresti usare un linguaggio che necessita di compilazione? Beh, è ​​più difficile decodificare. I linguaggi di programmazione interpretati spesso hanno il loro codice distribuito così com'è, rendendolo facile da "rubare". Per le aziende che desiderano proteggere la propria proprietà intellettuale, la compilazione inserisce un passaggio complesso e inaffidabile di reverse engineering per vedere il codice effettivo. Anche il software compilato tende ad essere più piccolo, poiché è stato ottimizzato per l'esecuzione. Questo non è davvero un problema con piccoli script, ma quando si ha a che fare con software di grandi dimensioni, centinaia di megabyte o addirittura gigabyte, questo può avere un effetto notevole.

Quindi cosa fa un preprocessore?

Un preprocessore è un'utilità che viene eseguita sul codice prima che venga compilato. In genere, un compilatore chiamerà automaticamente il preprocessore all'avvio, tuttavia, possono anche essere eseguiti separatamente. Il compito del preprocessore è impostare il codice esattamente come previsto. Lo fa principalmente eseguendo funzioni di ricerca e sostituzione.

In C, ad esempio, è pratica standard utilizzare un numero di librerie standard. Queste librerie definiscono una serie di funzioni che forniscono funzionalità standard. Per importare queste librerie viene utilizzata la parola chiave "#include" seguita dal nome di una libreria. Il preprocessore cerca nel codice affermazioni come "#include" e le sostituisce. Nel caso di "#include" il preprocessore inserisce l'intero contenuto della libreria specificata.

Ciò consente di mantenere facilmente leggibile il codice effettivamente scritto, facendo anche uso di molti strumenti potenti e preesistenti. Ti evita di dover reinventare la ruota per ogni applicazione o di dover incollare parte o tutta la libreria nella base di codice.

Un altro potenziale utilizzo di un preprocessore è rimuovere o aggiungere determinate funzionalità a seconda dell'intento della compilazione. Ad esempio, se desideri testare una nuova build, può essere davvero utile includere una serie di passaggi di debug. Non solo questi non sono necessari nelle build di rilascio, ma in realtà rendono più grande il software compilato. Un preprocessore può controllare gli argomenti del compilatore e determinare se determinate funzionalità devono essere incluse o ignorate. In modo simile a questo, un preprocessore in genere eliminerà i commenti prima del compilatore, poiché questi non dovrebbero essere inclusi in una build.

Conclusione

Un preprocessore è uno strumento eseguito da un compilatore per manipolare il codice prima che venga effettivamente compilato. Sebbene il preprocessore possa essere chiamato separatamente, in genere viene chiamato come parte del processo di compilazione. Il preprocessore cerca determinate stringhe definite e le sostituisce con contenuto standard. Per i commenti non c'è sostituzione, ma per le istruzioni che includono librerie esterne, il preprocessore sostituisce l'istruzione con il contenuto della libreria effettiva. Il preprocessore può anche accettare argomenti in fase di compilazione per controllare determinate funzionalità. Viene spesso utilizzato per includere o escludere la funzionalità di debug dalle build di test o di rilascio.



Leave a Comment

Come far funzionare Spotify nel nuovo Garmin Venu

Come far funzionare Spotify nel nuovo Garmin Venu

Scopri come configurare Spotify sul tuo Garmin Venu per ascoltare la tua musica preferita mentre ti alleni.

Risoluzione dei problemi dellapp Blink quando la fotocamera è offline

Risoluzione dei problemi dellapp Blink quando la fotocamera è offline

Scopri come risolvere i problemi dell

S Pen rispetto a Apple Pencil

S Pen rispetto a Apple Pencil

Scopri le differenze tra S Pen e Apple Pencil, due accessori per disegnare e prendere appunti, analizzando design, prestazioni e costi.

Che cosè WPS e come funziona?

Che cosè WPS e come funziona?

Scopri tutto su cosa è WPS e come funziona, insieme ai suoi vantaggi e svantaggi.

La TV Samsung non salva le impostazioni dellimmagine

La TV Samsung non salva le impostazioni dellimmagine

Scopri come risolvere il problema della tua TV Samsung che non salva le impostazioni dell

Come acquisire uno screenshot su un laptop Chromebook

Come acquisire uno screenshot su un laptop Chromebook

Guida dettagliata su come acquisire screenshot a schermo intero e parziale su Chromebook. Segui questi passaggi per facilitare la tua esperienza.

Correggi Chromebook Errore durante linstallazione di Linux Beta

Correggi Chromebook Errore durante linstallazione di Linux Beta

Se si è verificato un errore durante l

Guida ai materiali di stampa 3D: cosa sapere sul TPU

Guida ai materiali di stampa 3D: cosa sapere sul TPU

Per ottenere i migliori risultati nella stampa 3D, ecco cosa devi sapere sul TPU e i suoi utilizzi.

Che cosa fa Blocco scorrimento?

Che cosa fa Blocco scorrimento?

Il blocco dello scorrimento è un tasto sulla maggior parte delle tastiere, sebbene raramente venga utilizzato. Scopri come funziona e la sua utilità nei moderni software.

È possibile aggiornare la memoria del Chromebook?

È possibile aggiornare la memoria del Chromebook?

Scopri se è possibile aggiornare la memoria del tuo Chromebook e quali sono le migliori opzioni per ottimizzare le prestazioni del dispositivo.