コンパイラって何をすること?

EC運営代行

今回は聞いたことあるけど意味はよく知らない用語
「コンパイラ」についてお話ししていきます。

概要

「コンパイラ」とは簡単にいうと、人間が理解できる形で記されたプログラミング言語を
コンピューターが理解できる形に翻訳してくれるプログラムのことです。

バイナリデータへの翻訳

普段私たちが書いているコードというのは
英単語が多く含まれており、私たち人間にとっては意味を
理解しやすいものになっています。

しかし、この言葉をコンピュータが理解し、処理を行っているわけではなく
コンピュータが理解できるデータ「バイナリデータ」に翻訳されたあとに
コンピュータが初めて言葉の意味を理解、処理を行うという行為に繋がるのです。

コンピュータが理解できるデータ「バイナリデータ」はどのような記録が
されているのか気になりますよね!
その内容としては0と1のみで表される二進数のデータの集約であり、
私たち人間には基本的には理解することができないようになっています。

この時、コンパイラによって変換される前のコードを
「ソースコード」といいます。
そして変換された後のコードのことを
「オブジェクトコード」といいます。

なにもプログラミング言語だけがバイナリデータに翻訳されているわけでは
ありません。
画像、そして音楽もバイナリデータで扱われていることが多いです。

仕組み

コンパイラの仕組みと流れ

字句解析

全体のソースコードの確認。

構文解析

字句解析をもとに、構文の構造を解析。命令ごとに処理をまとめます。

中間コード生成

その名の通り、プログラミング言語で書いたソースコードと機械語で書かれたコードの
中間にあたるコードを生成します。

オブジェクト最適化

コードの無駄な部分を効率化し、実行時間が短くなるように編集をします。

コード生成

最適化されたものをコード生成、ここで初めて機械語への変換が完了します。

まとめ

普段私たちが書いているコードも、そのままを機械が理解してくれているわけではなく、
その間で様々なプログラムが働いていることがわかりましたね!

コンパイラだけに限らず、インターネット上での処理というのは、
いくつもの流れが重なりに重なってできているものだと意識すれば
フロントエンド、バックエンドの知識についてより理解が
深まると思います!

お問い合わせCONTACT

電話受付時間 / 平日 10:00〜18:00

些細なことでも、お気軽にお問い合わせください。

PAGE TOP