C および ASM で作成したソース コードに ASM 命令を移植しようとしています。命令セットを見つけて、ARMv7 の命令の使用法を理解するのを手伝ってくれる人はいますか? 実際には割り込みを処理しているので、「翻訳」したい:
iretq
int $0x80
int $0x04
私は ARMv7 ASM でプログラミングしたことがありません。
ありがとう!
C および ASM で作成したソース コードに ASM 命令を移植しようとしています。命令セットを見つけて、ARMv7 の命令の使用法を理解するのを手伝ってくれる人はいますか? 実際には割り込みを処理しているので、「翻訳」したい:
iretq
int $0x80
int $0x04
私は ARMv7 ASM でプログラミングしたことがありません。
ありがとう!
対応する Intel 命令は、それぞれiret
およびint
です。とはいえ、割り込み処理は CPU およびプラットフォームに大きく依存します。コマンドを 1 対 1 で変換しても、動作するプログラムが得られる可能性はほとんどありません。アプリケーションを開発している場合は、割り込みをいじるべきではありません (int 80h であっても、syscall を実行するためのより良い方法があります)。ドライバーや OS カーネルを開発している場合は、アセンブリを 1 行ずつ翻訳するのではなく、体系的に学習する必要があります。
int
コマンドは、理論的にはアプリケーション コードに存在する可能性があります。割り込みを呼び出します。これは、OS と対話するための風変わりではありますが、正当な方法です。一方iret
、コマンドは割り込みハンドラでのみ使用する必要があります。カーネル空間の外で使用されることはありません。