A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
逆コンパイルは実行形式のバイナリファイルやオブジェクトファイルからそれの元になった
高級言語のソースを作ることです。
元になった高級言語とは別に言語で出力する場合もあります。
かなり豊富なデバッグ情報がバイナリファイルに含まれていないと
あまりまともなソースにはなりません。再コンパイルできない程度の
出力なこともよくあります。
しかし、バイナリしかないよりは遥かにましです。
逆アセンブルは実行形式のバイナリファイルやオブジェクトファイルからアセンブリ言語のソースを作ることです。アセンブリ言語はマシン語とほぼ一対一に対応する言語なので、生成は容易ですが、やはりデバッグ情報がないとジャンプ先のラベル名とかは再現できません。それでもバイナリをニーモニックに変換するだけでも、だいぶ読みやすくはなります。
逆アセンブルは、高級言語で作成された言語の詳細な動きを
調べるのにもよく使われますね。昔は C 言語の詳細な仕様書が無くて
Cがソースをどう解釈するのか調べるのに逆アセンブラ出力をよく
使いました。
No.3
- 回答日時:
高水準言語 で開発された プログラム でも、逆アセンブルによって
アセンブリ言語 による プログラム とすることができる。
これに対し、開発言語が分かっている場合に、 機械語 の コード を
元の プログラミング言語 の ソースコード へ変換することを
「 逆コンパイル 」。
引用
No.1
- 回答日時:
LD A、00H
のようなのがアセンブル言語 <ーこれが人間が論理的に理解できる最も低レベルなプログラミング言語
これを、二進(十六進)値の羅列にしたものがマシン語と呼ばれコンピュータが直接理解できる
これの逆なので、機械語レベルの値の羅列からアセンブル言語に逆変換掛けるのが逆アセンブル
コンパイルはより人間が扱いやすい高級言語を機械語もしくは他の中間言語に変換する処理なので
逆コンパイルは、そういった変換されたデータを高級言語に逆変換掛けること
対象が、アセンブル言語かそれ以外の高級言語かの違い
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# スタックフレームの消滅 6 2023/05/20 12:33
- C言語・C++・C# Cのコンパイルでコメントアウトをそのままオブジェクトに保持したい 7 2023/08/01 22:22
- Excel(エクセル) vba コンパイル 4 2022/10/27 10:01
- C言語・C++・C# Cのオブジェクトファイルの逆アセンブル 5 2023/05/13 01:51
- Java dokojavaのコンパイルについて 1 2022/10/06 18:42
- その他(ブラウザ) iPhone SEです。 ソースからコンパイルする方法ってどうすればいいのですか。教えてくださると嬉 3 2022/10/02 08:08
- その他(プログラミング・Web制作) VSC などが苦手 2 2022/11/16 22:20
- C言語・C++・C# エラー: ‘inval’ の記憶サイズが不明です。 union semun inival; というエ 2 2023/01/16 22:04
- C言語・C++・C# C言語をコンパイルするとコンピュータ上でどう動くかというコードになるみたいな説明をよく聞くのですがこ 6 2024/04/18 00:09
- C言語・C++・C# CPUが16bitでも32bitOSでコンパイルしたコード(例えばintが4バイトと定義されている) 7 2024/06/25 08:08
このQ&Aを見た人はこんなQ&Aも見ています
-
今ってプログラミング言語は何が中心?
C言語・C++・C#
-
プログラミング言語でアプリやゲームweb制作をしようと思っております。色んなプログラミング言語がある
C言語・C++・C#
-
Cのプログラムからアクセスできないファイル名の一括変更方法
C言語・C++・C#
-
-
4
プログラマー達は何故、プログラムを入れるフォルダーに容量制限があるのを知らない?
C言語・C++・C#
-
5
プログラム言語について c言語もコードによって機械語に通訳されると知りました。直接機械が通訳しなくて
C言語・C++・C#
-
6
C言語について。
C言語・C++・C#
-
7
プログラミング言語についてc++に空白あると同じ文字を再度繰り返して処理しないといけないので2倍動作
C言語・C++・C#
-
8
2つほどお聞きしたいことがあり、答えてもらえると助かります。 1つ目は、チャットGPTにあらかじめ、
C言語・C++・C#
-
9
C言語について。
C言語・C++・C#
-
10
c++の勉強方法を教えてくださいプログラミングをやった事がなく1から勉強を始めようと思います1日1時
C言語・C++・C#
-
11
整数じゃない数字を教えてください
数学
-
12
C# で 数式文字列処理を処理する方法
C言語・C++・C#
-
13
C言語のことです。写真(見にくくてすいません)の下のプログラムを実行したいのですが四行目がおかしいと
C言語・C++・C#
-
14
=って逆も正しくないとダメですよね?「ゴリラ=動物」って動物はゴリラ以外もこの世に存在するので「=」
数学
-
15
プログラミングc++を全く分からない状態から習得するまでどれくらいかかりますか?なぜ難しいと言われて
C言語・C++・C#
-
16
戦闘機
軍事学
-
17
これなんて読むのか解読できる方いませんか?
その他(教育・科学・学問)
-
18
相対論の決定的な矛盾を発見しました!間違いを指摘してください
物理学
-
19
RSA暗号における公開鍵と秘密鍵の意味
数学
-
20
9.11 WTC 旅客機テロは単なる爆破ではないですか?
物理学
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
秋月PICプログラマーを使っ...
-
JPGからSWFへ変換
-
緯度、経度の 10進法と 60進法...
-
ローマ字の出し方
-
C++で文字コードの変換
-
FPDFでPHPファイルをPDFに変換...
-
N88BASICのバイナリデータをテ...
-
ActiveXの使い方を教えてくださ...
-
ShijtJIS -> UTF-8 変換スピー...
-
.jpgと.pngファイルを...
-
複数のテキストの文字コード変更
-
htaccessでURLを変えたい
-
Visual C++のサンプルプログラ...
-
RGBからCMYKの変換で生じる差で...
-
アセンブラ言語の数字を数値に...
-
Mac 乗数の入力方法
-
VB OracleからSQL変換
-
Excel2007のPDF変換機能
-
シフト演算の結果の型
-
一括文字列変換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
家電製品の電力周波数を変える機械
-
エクセルVBAの自動変換機能?
-
緯度、経度の 10進法と 60進法...
-
Mac 乗数の入力方法
-
C/C++→JAVAに変換するツール
-
なぜ通信には16進数文字列が使...
-
VB6からVB2010への変換について
-
10進数をBCDに変換する方法
-
画像ファイル変換(Tiff→PDF)
-
エクセルのvbaで検索ボタンを作る
-
分を時間に変換するプログラム
-
StrConvの使い方について教えて...
-
三角形を逆三角形にしたいです...
-
逆コンパイルと逆アセンブルの...
-
VB.NETをJavaに変換するツール...
-
UTF8→ShiftJISに変換したいです!
-
FortranをC++(VC++)へ変換
-
3のつく数字と3の倍数のみを表...
-
c++でmatからvectorへの変換の...
-
C#でのpngからbmpへの変換について
おすすめ情報