Транслятор
програма, яка перекладає програмний код з однієї мови програмування на іншу
Зміни шаблонів/файлів цієї версії очікують на перевірку.
Стабільна версія була перевірена 16 грудня 2020.
Трансля́тор (англ. translator) — програма або технічний засіб, який виконує перетворення чи іншу обробку текстів програм.
Транслятори поділяються на:
- компілятори — перетворюють текст програми мовою високого рівня на об'єктний код чи байт-код.
- декомпілятори — навпаки, намагаються з машинного коду отримати початковий код на високорівневій мові.
- асемблери — перетворюють текст програми мовою асемблера на машинний код.
- дизасемблери — навпаки, намагаються розшифрувати машинний код.
- інтерпретатори — отримують текст програми та набір вхідних даних, і повертають результат виконання програми над вхідними даними.
- препроцесори — отримують текст програми, і повертають перетворений певним чином текст програми.[джерело?]
Оскільки компілятори та інтерпретатори реалізують мови програмування, вони мають спільні риси: їх структура досить схожа, в основу їх реалізації покладено спільні теоретичні результати та практичні методи реалізації.
Структура транслятораРедагувати
Текст програми |
Послідовність токенів |
|
Синтаксичне дерево повідомлення про синтаксичні помилки |
Семантичне дерево повідомлення про семантичні помилки |
|
Оптимізоване семантичне дерево |
Генератор вихідного коду / виконання семантики
|
Код / результати роботи |
ПосиланняРедагувати
Це незавершена стаття про програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |