Ho passato molte spiegazioni su un compilatore e un interprete. Penso di aver capito chiaramente la differenza tra compilatore e interprete. Spiegherò il mio apprendimento attraverso il seguente esempio. Diciamo che abbiamo le tre linee di codice in un file.
a=3;
b=4;
a=a+b;
- Un compilatore converte queste tre linee in codice macchina (o in una lingua che è inferiore alla lingua corrente) e il processore (se si tratta di codice macchina) lo esegue per produrre l'output.
- Un interprete passa attraverso ogni riga, poiché al suo interno elabora a = 3 e produce l'output in base alle specifiche del linguaggio. Quindi, passa alla riga successiva e fa lo stesso.
Quello che non capisco è " come può un interprete produrre l'output di qualche codice, senza avere i componenti di calcolo come l'ALU di un processore? "
La mia comprensione è che qualsiasi programma dovrebbe essere eseguito da un processore in codice macchina come il processore capisce solo questo.
Oppure un interprete memorizza le istruzioni a livello macchina che dovrebbero essere eseguite per una funzione in un linguaggio di alto livello e chiede al processore di eseguire quelle istruzioni macchina ogni volta che quella specifica funzione arriva nel codice di quel linguaggio di alto livello?