コンパイラとは、ソースコードをコンピュータ側で認識するためのプログラムのことです。人間が作った言葉を、機械側が理解できるように翻訳するためのシステムです。現代では、携帯デバイスやデスクトップパソコンなど、様々な場面で高性能な製品が提供されています。
しかし、これらの製品はどれだけ高品質に開発されても人間の言葉を理解できるようにはなっていません。現在のように、コンピュータが都合のいいように動いているのは、人間側が命令している言語を機械が理解できるように翻訳しているからに他なりません。
実際に、この翻訳作業がなければ世界中のあらゆるコンピュータは指示通りに動かすことが出来ない現状です。この作業を行ってくれるのが、コンパイルというものです。
元々、人の言語で開発されたソースコードは人間にしか理解できないものです。計算処理に特化したコンピュータは、高度な人間の言葉、つまりソースコードを理解することが出来ないので、これを機械的にわかりやすいように翻訳する必要があります。
こうすることで、初めてコンピュータは人間の命令を理解して活動できるようになります。実際に、コンピュータは高度な受け答えを行っているわけではなく、中身は0や1といった数字や文字の羅列によって成り立っています。高度な計算能力を駆使して、コンピュータ側の結果を単一的に返すように作られています。
当然ですが、そのまま数字や文字の羅列だけを人間側に返したとしても、人間側もそういった複雑な計算結果を理解することは難しいです。そのため、人間とコンピュータがお互いに命令やその結果を理解するためにも、お互いの言い分が理解できる翻訳作業が必要になります。
現代では、高度なプログラミング言語が開発されたため、コンパイルが必要な機会は少なくなっています。しかし、コンピュータは根本的にこの作業がないと動かないことに変わりないので、より高度なプログラミング言語を利用する場合には必ずコンパイルをしなくてはいけません。