неділя, 20 грудня 2015 р.
Що таке компілятор і інтерпретатор
Створити мову, зручний для написання програм, недостатньо. Для кожної мови потрібен свій перекладач. Такими перекладачами є спеціальні програми-транслятори.
Транслятор - це програма, призначена для перекладу програми, написаної на одній мові програмування, в програму на іншій мові програмування. Процес перекладу називається трансляцією.
Тексти вихідної і результуючої програм знаходяться в пам'яті комп'ютера.
Прикладом транслятора є компілятор.
Компілятор - це програма, призначена для перекладу програми, написаної на якому-небудь мові, в програму в машинних кодах. Процес такого переведення називається компіляцією.
Компілятор створює закінчений результат - програму в машинних кодах. Потім ця програма виконується. Відкомпільований варіант вихідної програми можна зберегти на диску. Для повторного виконання вихідної програми компілятор вже не потрібен. Досить завантажити з диска в пам'ять комп'ютера відкомпільований в попередній раз варіант і виконати його.
Існує інший спосіб поєднання процесів трансляції та виконання програми. Він називається інтерпретацією. Суть процесу інтерпретації полягає в наступному. Спочатку переводиться в машинні коди, а потім виконується перший рядок програми. Коли виконання першого рядка закінчено, починається переклад другого рядка, яка потім виконується і так далі. Управляє цим процесом програма-інтерпретатор.
Інтерпретатор - це програма, призначена для прогресивного трансляції та виконання вихідної програми. Такий процес називається інтерпретацією.
У процес трансляції входить перевірка вихідної програми на відповідність правилам використовуваного в ній мови. Якщо в програмі знайдені помилки, транслятор вводить повідомлення про них на пристрій виводу (зазвичай, на екран дисплея).
Інтерпретатор повідомляє про знайдені ним помилки після трансляції кожного рядка програми. Це значно полегшує процес пошуку і виправлення помилок у програмі, проте істотно збільшує час трансляції. Компілятор транслює програму набагато швидше, ніж інтерпретатор, але повідомляє про знайдені ним помилки після завершення компіляції всієї програми. Знайти і виправити помилки в цьому випадку важче. Тому інтерпретатори розраховані, в основному, на мови, призначені для навчання програмуванню, і використовуються початківцями програмістами.
Більшість сучасних мов призначені для розробки складних пакетів програм і розраховані на компіляцію.
Іноді один і той же мова може використовувати і компілятор, і інтерпретатор. До числа таких мов відноситься, наприклад, Бейсік.
Як правило, програми-компілятори та інтерпретатори називаються так само, як і мови, для перекладу з яких вони призначені. Слова Паскаль, Ада, Сі можуть ставитися як до назв мов, так і до назв відповідних програм.
Підписатися на:
Дописати коментарі (Atom)
Немає коментарів:
Дописати коментар