3

見ただけで住所の位置合わせをどのように判断しますか?

32 ビット システムでは、アドレス 0x12345670 は 16 バイト アラインされていることを意味します (最後の 0 のため) ですよね?

それではどうですか:

0x12345671 0x12345672 0x12345673

等?

乾杯、ジョン

4

2 に答える 2

6

A mod n が 0 の場合、アドレス A は n アラインです。したがって、0x12345671 と 0x12345673 は 1 アラインで、0x12345672 は 2 アラインです。0x12345670 は、同時に、1 整列、2 整列、4 整列、8 整列、および 16 整列です。あなたは2の最高の累乗のみに言及しています(より低い累乗が暗示されているため)。

于 2009-08-15T16:11:37.280 に答える
4

末尾の 16 進数を確認します。

  • 1、3、5、7、9、B、D、F: 1 整列
  • 2、6、A、E: 2 整列
  • 4、B: 4つ揃え
  • 8: 8つ揃え
  • 10、30、50、70、90、B0、D0、F0: 16 整列
  • 20、60、A0、E0; 32 整列
  • 40、B0: 64 整列
  • 80:128整列
  • 00: 256体以上…
于 2009-08-15T16:19:24.520 に答える