1

この命令の間接アドレス指定モードに関して、私は非常に混乱しています。

and $0x0000FF00, 4(%esp)

これが現在のスタックのトップである場合:

0xBF8DB0B8: 0xDEADBEEF <--- ESP + 4
0xBF8DB0B4: 0xDEADBEEF <--- ESP

これは のメモリの内容です0xDEADBEEF:

0xDEADBEEF: 0x1234ABCD

次のうちどれが実行されますか?

  1. AND 0x0000FF00, 0xDEADBEEF結果:0x0000BE00に保存され0xBF8DB0B8ます。

  2. AND 0x0000FF00, 0x1234ABCD、結果:0x0000AB00に保存され0x0000AB00ます。

  3. AND 0x0000FF00, 0xDEADBEF3. 結果:0x0000BE00に保存され0xDEADBEF3ます。

4

1 に答える 1

2

AND 0x0000FF00, 0xDEADBEEF結果:0x0000BE00に保存0xBF8DB0B8:

%espアドレスが含まれているため、 はアドレスで0xBF8DB0B4あり、4(%esp)0xBF8DB0B8その0xDEADBEEFアドレスの内容です。

于 2013-02-26T07:51:36.853 に答える