1. ホーム
  2. assembly

[解決済み】アセンブリJLEのjmp命令例

2022-01-27 07:37:08

質問内容

をどのように使用するのですか? ジャンプファミリー の命令を教えてください。

これが彼らの持ち味です。

JLラベル
より小さい場合、またはより大きいか等しくない場合は、"It"ジャンプします。

私の質問は とは それ という文章がありますが、これは何でしょうか? で変数があるとします。 ebx というラベルにジャンプしたい。 there: もし ebx<= 10 .

具体的には、私が興味を持っているのは x86 ジャンプ命令群

解決方法は?

ジャンプ自体は、EFLレジスタのフラグをチェックします。これらのフラグは通常、TESTまたはCMPで設定されます(または、他の多くの命令の副作用として設定されます)。

CMP ebx,10
JLE there

  • CMPは、オペランドの差を計算し、フラグを更新し、結果を破棄することに対応します。一般に、大小判定に使用されます。
  • TEST は、オペランドのバイナリ AND を計算し、フラグを更新して結果を破棄することに対応します。一般に、等号チェックに使用されます。

こちらもご覧ください。 CMPに関するアセンブリ言語の技術

余談ですが、このような場合は インテルリファレンスマニュアル . 特に、2部構成の "Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 2: Instruction Set Reference" は、すべての x86 命令について記述しています。