1. ホーム
  2. assembly

[解決済み] eax に対して `testl` eax?

2022-03-09 17:46:20

質問

あるアセンブリを理解しようとしています。

以下のようなアセンブリで、私が興味を持っているのは testl の行になります。

000319df  8b4508        movl   0x08(%ebp), %eax  
000319e2  8b4004        movl   0x04(%eax), %eax  
000319e5  85c0          testl  %eax, %eax  
000319e7  7407          je     0x000319f0  

のその点を理解しようとしているのです。 testl との間に %eax%eax ? 私はこのコードが何であるかの詳細は重要ではないと思います、私はちょうどそれ自体とのテストを理解しようとしています - 値は常に真になるのではないでしょうか?

どのように解決するのですか?

このテストは eax が0か、それ以上か、それ以下か。この場合、ジャンプが行われるのは eax が0である場合。