Diferența Dintre Asamblator și Interpret

Diferența Dintre Asamblator și Interpret
Diferența Dintre Asamblator și Interpret

Video: Diferența Dintre Asamblator și Interpret

Video: Diferența Dintre Asamblator și Interpret
Video: Doru Octavian Dumitru, invitat special la iUmor! Mihai Bendeac: "Este efectiv o legendă!" 2024, Decembrie
Anonim

Asamblator vs Interpret

În general, compilatorul este un program de calculator care citește un program scris într-o limbă, care se numește limbă sursă, și îl traduce într-o altă limbă, numită limbă țintă. În mod tradițional, limbajul sursă este un limbaj de nivel înalt, cum ar fi C ++, iar limbajul țintă este un limbaj de nivel scăzut, cum ar fi limbajul de asamblare. Cu toate acestea, există compilatoare care pot converti un program sursă scris în limbaj de asamblare și îl pot converti în cod mașină sau cod obiect. Asamblatorii sunt astfel de instrumente. Pe de altă parte, interpreții sunt instrumente care execută instrucțiuni scrise într-un anumit limbaj de programare. Interpretul poate fie să execute direct cod sursă de nivel înalt, fie să le traducă în cod intermediar și apoi să îl interpreteze sau să execute cod precompilat.

Ce este un asamblator?

Assembler este un software sau un instrument care traduce limbajul de asamblare în codul mașinii. Deci, un asamblator este un tip de compilator, iar codul sursă este scris în limbajul Asamblării. Asamblarea este un limbaj care poate fi citit de om, dar are de obicei o relație unu la unu cu codul mașinii corespunzător. Prin urmare, se spune că un asamblator efectuează traducere izomorfă (cartografiere unu la unu). Asamblatoarele avansate oferă funcții suplimentare care sprijină dezvoltarea programelor și procesele de depanare. De exemplu, tipul de asamblori numiți asamblori macro oferă o facilitate macro.

Ce este un interpret?

Un interpret este un program de calculator sau un instrument care execută instrucțiuni de programare. Un interpret poate fie să execute codul sursă direct, fie să transforme sursa într-un cod intermediar și să îl execute direct sau să execute cod precompilat produs de un compilator (unele sisteme de interpretare includ un compilator pentru această sarcină). Limbi precum Perl, Python, MATLAB și Ruby sunt exemple de limbaje de programare care utilizează un cod intermediar. UCSD Pascal interpretează un cod precompilat. Limbi precum Java, BASIC și Samlltalk compilează mai întâi sursa într-un cod intermediar numit bytecode și apoi îl interpretează.

Care este diferența dintre un asamblator și un interpret?

Un asamblator poate fi considerat un tip special de compilator, care traduce limbajul de asamblare doar în codul mașinii. Interpretii sunt instrumente care execută instrucțiuni scrise într-o anumită limbă. Sistemele de interpret pot include un compilator pentru precompilarea codului înainte de interpretare, dar un interpret nu poate fi numit un tip special de compilator. Asamblatorii produc un cod obiect, care ar putea fi necesar să fie conectat utilizând programe linker pentru a rula pe o mașină, dar majoritatea interpreților pot finaliza singuri execuția unui program. Un asamblor va face de obicei o traducere unu la unu, dar acest lucru nu este adevărat pentru majoritatea interpreților. Deoarece limbajul de asamblare are o mapare unu la unu cu codul mașinii, un asamblator poate fi utilizat pentru a produce cod care rulează foarte eficient pentru ocaziile în care performanța este foarte importantă (de exemplu, motoare grafice,sisteme încorporate cu resurse hardware limitate în comparație cu un computer personal precum microunde, mașini de spălat etc.). Pe de altă parte, interpreții sunt folosiți atunci când aveți nevoie de o portabilitate ridicată. De exemplu, același bytecode Java poate fi rulat pe platforme diferite utilizând interpretul adecvat (JVM).

Recomandat: