2011-07-22 6 views
2

私は命令のソースまたはデスティネーションポイントを取得する必要があるいくつかのコード(x86用)に取り組んでいます。このためには、ModRMかREGが宛先かソースかを示す方向ビットが必要です。また、私は即時の値を処理することができる必要があります。これまでのところ、私は命令を処理することができ、それはプライマリオペコード(接頭辞とともに)です。私は、これについての最も簡単な方法が何であるか、誰かが、宛先/ソースが決定された良いコード例(レジスタ、メモリアドレス、または即値オペランドなど)を教えてくれるかどうか疑問に思っています。私は多くのデコーダを見たことがありますが、それらのほとんどはあるもののために特別に作られており、多くの機能を含むものは非常に複雑です。アセンブリ命令の方向ビットとソースまたはデスティネーションを読み取る方法

答えて

1

なぜディスアセンブラエンジンを使用しないのですか?あなたはバイトをどのようにデコードするかを知ることができます(仕様はIntelの開発者マニュアル第1巻にあります)。あるいは、あなたのためにすべての重労働を取らせることができます。その代わりに出力を処理することができますフラグ)。見るべき2つのオープンソースエンジンは、BeaEngine(太陽の下でのすべての命令、インターフェイスを使いやすいもの)とollydbgの災害エンジン(シンプルでコンパクトなSSE1命令までしかない)です。

+0

ああ私はここのどこかにollydbgソースがあるのを忘れていました。私はそれを見てみましょう。 –

関連する問題