「逆コンパイル」の版間の差分

提供: セキュリティ
移動: 案内検索
(ページの作成:「逆コンパイル (decompile, デコンパイル) とは、コンパイルとは逆の行いをします。オブジェクトコードをソースコードに変換...」)
(相違点なし)

2014年12月7日 (日) 17:48時点における版

逆コンパイル (decompile, デコンパイル) とは、コンパイルとは逆の行いをします。オブジェクトコードをソースコードに変換することです。そのため、逆コンパイルに用いられるプログラムは、逆コンパイラと呼ばれます。

読み方

逆コンパイル
ぎゃく こんぱいる
デコンパイル
でこんぱいる
decompile
でこんぱいる

概要

逆コンパイルは、プログラムの調査を行うときに、行います。 ソースコードは、持っていないが、オブジェクトファイルを持っているときに、オブジェクトのプログラムがどのように動作するのか、調査するときに、オブジェクトからプロプラム言語に変換します。

ソースコードは、コンパイラがコンパイルすることにより、オブジェクトファイル(実行ファイル)ができます。 オブジェクトファイルは、逆コンパイラで逆コンパイルすることで、ソースコードになります。図式すると以下の通りです。

ソースコード(1) -> コンパイラ -> オブジェクトファイル -> 逆コンパイラ -> ソースコード(2)

上記のソースコード(1)とソースコード(2)は、たいていの場合、完全な同一のソースコードにはなりません。

逆アセンブラ

マシン語からアセンブリ言語に逆コンパイルするツールは、逆アセンブラと呼ばれます。

関連項目