- Транслятор – обслуживающая программа, преобразующая исходную программу, предоставленную на языке программирования, в рабочую программу, представленную на машинном коде.
- Разновидности трансляторов:
- Ассемблер (проверяет весь файл на ошибки и переводит на машинный код по типу «одну символическую команду в одну машинную»). Применяется для низкоуровневого языка (Assembly);
- Компилятор (проверяет весь файл на ошибки и переводит на машинный код всю программу). Применяется для языков высокого уровня (С++, Java и так далее);
- Интерпретатор (воспринимает входную программу на исходном языке и выполняет её построчно). Применяется для всех скриптовых языков, например: Basic, Java, JavaScript, Python, PHP.
- Этапы обработки программы на языке Python:
- синтаксический анализ (проверка соответствия программного кода синтаксису языка программирования);
- парсинг (разбиение на токены и построение синтаксического дерева);
- семантический анализ (проверка согласованности кода);
- компиляция в байт-код – перевод программы во внутренний формат;
- выполнение программы – выполнение байт-кода виртуальной машиной Python.