Програма — це упорядкований список команд, написаних мовою програмування і призначених для виконання на комп'ютері. Отже, процес роботи комп'ютера полягає у виконанні програми, тобто набору цілком певних команд.
Разом з тим, для того щоб комп'ютер міг виконувати програму, її потрібно перекласти на машинну мову. Для такого перекладу використовують спеціальні програми-транслятори.
Транслятор — це програма, яка призначена для перекладу тексту програми' з однієї мови програмування на іншу мову. Процес перекладання називається трансляцією.
Компілятор - це програма, призначена для перекладу в машинні коди програми, що написана мовою високого рівня. Процес такого перекладання називається компіляцією.
Кінцевим результатом роботи компілятора є програма в машинних кодах, яка потім виконується ЕОМ. Скомпільований варіант програми можна зберігати на дискові. Для повторного виконання програми компілятор вже не потрібен. Досить завантажити з диска в пам'ять комп'ютера скомпільований перед цим варіант і виконати його.
Існує інший спосіб поєднання процесів трансляції та виконання програм. Він називається інтерпретацією.
Інтерпретатор - це програма, що призначена для трансляції та виконання вихідної програми по командах (на відміну від транслятора, який цей процес виконує в цілому). Такий процес називається інтерпретацією.
У процесі трансляції відбувається перевірка програми на відповідність до правил її написання. Якщо в програмі знайдені помилки, транслятор виводить повідомлення про них на екран монітора. Інтерпретатор повідомляє про знайдені помилки після трансляції кожної команди програми, а компілятор - після завершення компіляції всієї програми. Знайти та виправити в цьому випадку помилки значно складніше, ніж при інтерпретації. Через це програми-інтерпретатори розраховані, в основному, на мови, що призначені для навчання програмуванню, і використовуються програмістами-початківцями.