8.6.8 AlignExpr(expr, align) 関数

アドレス式を指定された境界に整列します。

この関数は以下を返します。
(expr + (align-1)) & ~(align-1))
各項目には以下の意味があります。
  • expr は有効なアドレス式です。
  • align は境界整列です。2 の累乗の正の数を指定する必要があります。
次の値になるまで、expr が増やされます。
0 mod align

この例では、ER2 のアドレスを 8 バイト境界で整列させています。
ER +0
{
    …
}
ER2 AlignExpr(+0x8000,8)
{
    …
}

ALIGN キーワードとの関係

ALIGNAlignExpr の間には以下の関係があります。
ALIGN キーワード
ロード領域と実行領域に ALIGN キーワードが指定されている場合、次のようになります。
  • ロード領域については、ALIGN キーワードによって、ファイルとロード空間内のロード領域のベースアドレスが指定した境界で整列されます。
  • 実行領域については、ALIGN キーワードによって、実行空間とロード空間内の実行領域のベースアドレスが指定した境界で整列されます。
AlignExpr
処理対象の式を整列させます。ただし、ロード領域または実行領域のプロパティには影響しません。
関連する参考文書
8.4.3 実行領域の属性
非機密扱いPDF file icon PDF 版ARM DUI0474LJ
Copyright © 2010-2015 ARM.All rights reserved.