Мовний процессор – це програмний комплекс, що реалізує мову програмування. При розробці мовних процесорів беруться до уваги три аспекти: прагматичний, семантичний, синт`аксичний.
Прагматичний аспект в мовному процесорі визначає область адекватного використання системи: транслятори та інтерпретатори. Транслятор - на вхід якого подається текст (програма) на вхідний мові, а на виході подається текст на вихідній мові. Інтерпретатор - на вхід якого подається програма, на виході отримуємо результат роботи програми по вхідним даним.
В залежності від того, яка вхідна мова використовується при трансляції, існує дві спеціалізації трансляторів: компілятори і асемблери. Якщо вихідною мовою є об’єктний код, то такі транслятори - компілятори. Якщо вхідна мова транслятора - асемблер, а вихідна - машинний код, то такі транслятори - асемблери.
Архітектура ЕОМ в певній мірі впливає на структуру мовного процесора. В залежності від структури ЕОМ мовні процесори поділяють на: 1) однопрохідні мовні процесори (він отримує результат за один перегляд вхідної програми, як приклад Pascal); 2) багатопрохідні мовні процесори (він отримує результат за багато переглядів вхідної програми, як приклад Assembler). Кількість переглядів мовним процесором вхідної програми залежить від структури мови програмування.
| Оптимізація семантичного терму |
| Генератор вихідного тексту (об’єктний код) |
| Мовні таблиці транслятора |
Структура мовного процесора типу ТРАНСЛЯТОР Структура мовного процесора типу ІНТЕРПРЕТАТОР
| Інтерпретація семантичного терму |
| Мовні таблиці транслятора |
Системне програмування