исходный код – это текст программы на "языке высокого уровня" (более-менее удобочитаемом для человека). компьютер такую программу выполнить не сможет, ему нужна программа в виде последовательности инструкций процессора (на низкоуровневом языке). для преобразования первого во второе служит компилятор. собственно, компиляция – это и есть преобразование из высокоуровневого в машинный язык (как правило, через объектный код, являющийся промежуточным этапом между двумя фазами).