Компилятор - это такая программа, которая превращает текст программы высокого уровня, в такую же программу на машинном коде.
Компиляция бывает нескольких видов:
- Пакетная компиляция, компилирует сразу несколько модулей;
- Построчная компиляция, работает аналогично интерпретатору;
- Условная компиляция, транслируемые данные зависят от условий, заданных пользователем.

Большая часть компиляторов превращают исходный код в машинный, после чего тот может быть прочитан процессором. Обычно полученный код может быть исполнен только на одной ОС, так как различные библиотеки у каждой операционной системы свои.

Процесс компиляции можно разделить на следующие части:
- Лексический анализ кода, исходный код переводится в набор лексем;
- Анализ синтаксиса, лексемы переводятся в деревья разбора;
- Анализ семантики, результатом является промежуточное представление;
- Оптимизация кода, происходит оптимизация кода, удаление избыточных кусков и упрощение;
- Кодогенерация, промежуточное представление преобразуется в целевой код.


Для того, чтобы уехать работать или учиться за границу, необходимо учить английский. Помочь в изучении Вам могут специальные курсы, предоставляемые сайтом oxfordklass.com. На курсах Вы сможете выбрать тот уровень языка, который необходим для Ваших целей.