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

Weblio 辞書 > 同じ種類の言葉 > 情報 > コンピュータ > コンパイル > 逆コンパイルの意味・解説 

ぎゃく‐コンパイル【逆コンパイル】

読み方:ぎゃくこんぱいる

機械語プログラムを、元のソースコード変換すること。デコンパイル。→逆コンパイラー


逆コンパイル

読み方ぎゃくコンパイル
別名:デコンパイル
【英】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 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 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の元に提供されております。

©2024 GRAS Group, Inc.RSS