15.2.2 Il compilatore

Il compilatore è un programma in grado di tradurre in linguaggio macchina uno o più file sorgenti scritti in un particolare linguaggio di programmazione. Esso fornisce come output un file eseguibile. Tale file è il risultato della traduzione dei file sorgenti ed è quindi direttamente comprensibile dalla CPU. Quindi per la sua esecuzione non è necessario avere il compilatore.


pict
Figura 15.4: Schematizzazione del funzionamento di un compilatore.

La compilazione scinde la fase di traduzione delle istruzioni contenute nei file sorgenti da quella di esecuzione. Essa è relativa soltanto alla fase traduzione di un programma in linguaggio macchina ma non è legata in alcun modo alla sua esecuzione. In particolare, la compilazione di un programma si compone di due fasi distinte (v. fig. 15.5):


pict
Figura 15.5: Schematizzazione della realizzazione di un file eseguibile tramite compilazione.

In genere un programma si appoggia a delle librerie di sistema (ed eventualmente anche a delle librerie specifiche) per poter essere avviato, terminato ed eseguito. Il codice eseguibile presente in tali librerie deve essere inserito nel file eseguibile, risultato della compilazione del programma, in maniera tale che il file stesso risulti indipendente.

Di seguito sono elencati i vantaggi e gli svantaggi dell’utilizzo di un compilatore

[da completare ...]
15.2.2.1 Le librerie

[da completare ...]