В тази статия ще научите разликите между интерпретаторите и компилаторите.
Обикновено пишем компютърна програма, използваща език на високо ниво. Езикът на високо ниво е разбираем за нас, хората. Това се нарича изходен код .
Компютърът обаче не разбира език на високо ниво. Той разбира само програмата, написана в 0 и 1 в двоичен файл, наречена машинен код .
За да конвертираме изходния код в машинен код, използваме компилатор или интерпретатор .
И компилаторите, и интерпретаторите се използват за преобразуване на програма, написана на език от високо ниво, в машинен код, разбираем от компютрите. Съществуват обаче разлики между начина на работа на интерпретатора и компилатора.
Преводач срещу компилатор
| Преводач | Съставител | 
|---|---|
| Превежда програмата по едно изявление. | Сканира цялата програма и я превежда като цяло в машинен код. | 
| Преводачите обикновено отнемат по-малко време за анализ на изходния код. Общото време за изпълнение обаче е сравнително по-бавно от компилаторите. | Компилаторите обикновено отнемат много време, за да анализират изходния код. Общото време за изпълнение обаче е сравнително по-бързо от интерпретаторите. | 
| Не се генерира междинен обектен код, следователно има ефективна памет. | Генерира междинен обектен код, който освен това изисква свързване, следователно изисква повече памет. | 
| Езици за програмиране като JavaScript, Python, Ruby използват интерпретатори. | Езици за програмиране като C, C ++, Java използват компилатори. | 
Работа на съставител и преводач
 








