私は命令のソースまたはデスティネーションポイントを取得する必要があるいくつかのコード(x86用)に取り組んでいます。このためには、ModRMかREGが宛先かソースかを示す方向ビットが必要です。また、私は即時の値を処理することができる必要があります。これまでのところ、私は命令を処理することができ、それはプライマリオペコード(接頭辞とともに)です。私は、これについての最も簡単な方法が何であるか、誰かが、宛先/ソースが決定された良いコード例(レジスタ、メモリアドレス、または即値オペランドなど)を教えてくれるかどうか疑問に思っています。私は多くのデコーダを見たことがありますが、それらのほとんどはあるもののために特別に作られており、多くの機能を含むものは非常に複雑です。アセンブリ命令の方向ビットとソースまたはデスティネーションを読み取る方法
2
A
答えて
1
なぜディスアセンブラエンジンを使用しないのですか?あなたはバイトをどのようにデコードするかを知ることができます(仕様はIntelの開発者マニュアル第1巻にあります)。あるいは、あなたのためにすべての重労働を取らせることができます。その代わりに出力を処理することができますフラグ)。見るべき2つのオープンソースエンジンは、BeaEngine(太陽の下でのすべての命令、インターフェイスを使いやすいもの)とollydbgの災害エンジン(シンプルでコンパクトなSSE1命令までしかない)です。
関連する問題
- 1. x86アセンブリの乗算命令と除算命令のオペランド、16ビット以上
- 2. アセンブリ命令の保存方法を調べる
- 3. アセンブリMIPS TAl命令
- 4. アセンブリJZ命令CMP
- 5. アセンブリの移動命令
- 6. アンドロイドのソースからデスティネーションへのルートの方向を見つける
- 7. 別のアセンブリからapp.configを読み取る方法は?
- 8. アセンブリ命令movレジスタ、[register] [register]
- 9. asm命令を使用してMIPS CPUレジスタを読み取る
- 10. ファイルからビットを読み取る方法は?
- 11. Delphi:TBytesからXビットを読み取る方法は?
- 12. 同じアセンブリ命令が、別のマシン命令
- 13. アセンブリでのハードウェアへの書き込み/読み取り方法
- 14. GPUメモリ読み出し命令フロー、オペランドコレクタ
- 15. C#を使用してLSBビットを読み取る方法
- 16. C(DOS)組み込みアセンブリ - 不正命令
- 17. アセンブリ:ROL命令は正しい?
- 18. mipsには32ビットのアドレスと32ビットの命令がありますか?
- 19. アセンブリの学習中の命令エラー
- 20. デバッグ現在の命令ポインタを取り除く方法
- 21. スマートカードの読み取り(8ビットまたは16ビットですか?)
- 22. Direction/Sign x86命令セットのビット拡張
- 23. X86アセンブリ - IDIV命令の処理
- 24. 機械コードへのアセンブリ命令
- 25. アセンブリ言語命令の実装
- 26. eclipseの命令で取った命令サイクルの数を調べる - Android
- 27. x86_64アセンブリのSTDINからの入力を読み取る方法は?
- 28. HTTPレスポンスヘッダのSet-Cookie命令の読み込み
- 29. 1つのマシン命令が書き込むアドレスを取得する方法は?
- 30. アセンブリ命令 'db'は実際に何をしていますか?
ああ私はここのどこかにollydbgソースがあるのを忘れていました。私はそれを見てみましょう。 –