私はimulが符号付き乗算であることを理解しており、ドキュメントは3つのオペランドの構文がimulq dest, source1, source2
であることを示唆しているようです。したがって、行は次のようになります。%rbxに格納されているアドレスの内容と%raxの値を掛け合わせて、メモリ位置44に格納しますが、確かに正しくありませんか?
答えて
あなたはIMUL r64, r/m64, imm8
として命令セット・リファレンスで定義され、imm8
によってr/m64
の内容を乗算し、保存する」を意味しているimul
命令、の3オペランドのバリアントを使用しています結果はr64
となります。また、32ビットの即値をとるこの命令の別の変種もありますが、この場合、どの変種が実際にアセンブラによって発行されるかはわかりません。
アセンブラは、x86アセンブリのAT & T構文を使用しているようです。これはデフォルトでGNUアセンブラで使用されます。命令のオペランドを逆順に指定することは知られている。したがって、imulq $44, (%rbx), %rax
は、%rbx
に格納されたアドレスのメモリの内容に44
を掛けて、結果を%rax
に格納します。
オペランドの順序は、ドキュメントの記述方法とは異なります。
"レジスタrbxのメモリアドレスに格納されている符号付き整数値を取得し、それに44を掛けて、結果をレジスタraxに格納します。"
それとも単に: imulq multiplier1, multiplier2, destination
実際には 'imulq multiplier2、multiplier1、destination'です。 AT&T構文では、パラメータはすべて逆になります。インテルのドキュメントを見るときは、彼らの言うことを逆にする必要があります。 (もちろん、この特定のケースでは重要ではありません。なぜなら乗算は可換であるからです。) –
- 1. Rは、RAX、RBX、RCX、RDX、RSI、RDI、RBP、RSPのどれですか?
- 2. "nop dword ptr [rax + rax]" x64アセンブリ命令は何をしますか?
- 3. x86-64パイプラインがJMP RAXのような間接ジャンプで停止しますか? x86-64では
- 4. また、RAX、RBXなどのレジスタをR1、R2などと呼んでいますか?
- 5. 「mov rax、QWORD PTR fs:0x28」アセンブリ命令は何をしますか?
- 6. RAXからCへの変数の移動(x86-64 asm)
- 7. YMMレジスタからIntel x86-64命令付きRAXへのMOV
- 8. x86アセンブリエラー
- 9. 失敗したフォークのシステムコールの後のraxの戻り値は何ですか?
- 10. ガスx86の:switch文
- 11. Cコードをx86-64アセンブリに変換する
- 12. x86アセンブリ関数の解読
- 13. NASM x86アセンブリを使用して余弦波をプロットする
- 14. NOPLはx86システムで何をしますか?
- 15. X86アセンブリ - IDIV命令の処理
- 16. RAXは算術論理解の値またはアドレスを格納しますか?
- 17. のx86アセンブリ - 文章中の文字の頻度
- 18. x86アセンブリ言語のCLDとSTDは何ですか? DFは何をしていますか?
- 19. tortoisehg 2.1.3コンテキストメニューのクリックはwin7 x86では何もしません
- 20. 良いx86アセンブリ言語リソースには何がありますか?
- 21. $ {env:ProgramFiles(x86)} Powershell変数には32ビット/ x86システムに含まれるものは何ですか?
- 22. QEMUは、x86〜x86エミュレーションのゲストレジスタと同じホストレジスタを使用しますか?
- 23. X86 64エコープログラムのLinuxシステムコール
- 24. 何がProcessorArchitectureをx86またはMSILにロックするのですか?
- 25. x86アセンブリ関数
- 26. android sdk managerのIntel x86アトムシステムイメージは何ですか?
- 27. Rの時系列を扱うベストプラクティスは何ですか?
- 28. +44 7781 470659
- 29. x86アセンブリコード
- 30. この奇妙な三元系の操作は何ですか?
Intelの構文とAT&Tの構文が混同しています。 –
[インテル構文と比較して、AT&T構文のソースオペランドの順序は?](http://stackoverflow.com/questions/7548509/what-is-the-order-of-source-operands-in- att-syntax-compare-to-intel-syntax) –