/var/log/hdk.log コメント
2010/04/03 のコメント
2010/04/03 の日記を表示する
- 2010/04/06 18:42:02 きらね さん 『 逆アセンブラというと、例えば4バイト命令の直前にジャンプ命令があって、そのジャンプ命令が2バイト先にジャンプさせていたりとか、難しくありませんかとか、そういうものは対象にしないのか・・・。 』
- 2010/04/06 22:43:20 hdk さん 『 そういうのは厄介ですが、もちろん、普通逆アセンブラーというとそういうのは対象ではありません。似たようなものとしては、他にも、例えば CALL 命令の直後にサブルーチンで使うデータを配置するようなプログラムはしばしば見かけます。 』
- 2010/04/07 17:21:35 きらね さん 『 X68000 という個人用コンピュータがあって、フリーで唯一の逆アセンブラがそういうのを解析して、プログラムとデータを区別する仕様になっていたので・・・。ついでに、ジャンプテーブルも解析してくれました(遠い目)。 』
- 2010/04/07 21:28:20 hdk さん 『 x86 では市販ソフトの Sourcer とかありました... プロシージャーとかデータとか、何パスか繰り返して解析するんですが結構外れも多かったりして。私が書いたのはデバッガーについてる逆アセンブルコマンド程度のものです。 』
- 2010/04/07 22:59:24 きらね さん 『 そう言えば、機械語をC言語にコンバートするツールを作成しようとして挫折しました。エミュレータより速くなるはずだったんだけどなぁ。
』 - 2010/04/08 00:36:06 hdk さん 『 逆コンパイラーみたいな? 非常に単純に考えると、命令の名前の関数をつくって、逆アセンブル結果にしたがってその関数呼び出しを並べて、最適化フルにかけてコンパイルすれば、良さそうですが、難しそう。 』
- 2010/04/08 00:38:39 hdk さん 『 そういえば、機械語解析して最適化するプログラムを書けば、(当時の) C で書かれた無駄の多いプログラムも速くなるに違いないなんて思っていた時期が小学生の頃にありましたが、エミュレーター書くよりはるかに難しいです。 』
コメントを書く