逆コンパイラとは? わかりやすく解説

Weblio 辞書 > コンピュータ > IT用語辞典 > 逆コンパイラの意味・解説 

逆コンパイラ

読み方ぎゃくコンパイラ
別名:デコンパイラ
【英】decompiler

逆コンパイラとは、0と1で表現される機械語によって書かれプログラム記述オブジェクトコード)を、高級言語などへ変換を行う際に用いプログラムのことである。

機械語を、人間から見て理解しやすいアセンブリ言語変換する逆アセンブルとは区別されるもので、アセンブリ言語以外の高級な言語変換する際に、逆コンパイラが用いられる。なお、逆コンパイラがプログラムそのものを指すのに対して、それを実行することは逆コンパイル呼ばれる

元のソースコード含まれている変数名などが、コンパイル行った際になくなっているため、逆コンパイラを用いて、元のソースコードコンパイル前の状態に復元することは難しいが、特にJavaによって記述されプログラムは、逆コンパイル比較的容易であると言われている。

なお、ソフトウェアの利用規定などで著作権保護観点から、逆コンパイル禁止している場合もあるので注意が必要である。

プログラミングのほかの用語一覧
開発環境:  ビルド  逆アセンブラ  逆アセンブル  逆コンパイラ  逆コンパイル  共有ライブラリ  行番号

逆コンパイラ

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/12/26 00:27 UTC 版)

逆コンパイラ(ぎゃくコンパイラ、: Decompiler)とは、機械語で記述されたオブジェクトコードを解析し、人間にわかりやすいソースコードを作成するプログラムである。

概要

人間がプログラムを作成するときには CJava といった高水準言語を用い、それをコンパイラによって機械語へ翻訳することで、コンピュータが理解できるオブジェクトコードが作成される(コンパイル)。逆コンパイルとはその名の通り、オブジェクトコードを解析し、ソースコードを作成することであり、それを行うプログラムを逆コンパイラという。

「逆-」という名称が用いられているが、むろん完全にもとのソースコードが再現されるわけではなく、コメント変数名はコンパイル時に完全に失われているため、元に戻すことは不可能である。しかし、Java の実行ファイルについてはかなり高い再現度でソースコードを作成することができる。

なお平成30年に著作権法改正により柔軟な権利制限規定がされ、ソフトウェアの開発元が定める利用規約等によって、公開されているプログラムに対して逆コンパイル等のリバースエンジニアリングを行うことを禁じている場合でも著作権侵害とならないと解される[1]、規約との関係については注意する必要がある。

EU では Directive on the legal protection of computer programs[2]の6条において、いくつかの条件のもとで逆コンパイルに権利者の許可が不要であると規定している。また9条の規定で、6条に反する契約条項は無効 (null and void) とされている。

主要な逆コンパイラ

脚注

[脚注の使い方]

関連項目



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「逆コンパイラ」の関連用語

逆コンパイラのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



逆コンパイラのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2025 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリの【逆コンパイラ】の記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの逆コンパイラ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS