Regionリテラル
このセクションの内容:
構文
[fromexpr{ toexpr| sizeexpr} [ repeatexpr[ displacementexpr]]]
ここで、exprは式です(リンカ設定ファイル内の式を参照)。
パラメータ
|
|
|
|
|
|
|
|
|
|
説明
Regionリテラルは、1つのメモリ範囲で構成されます。範囲を定義する場合、範囲が配置されるメモリ、開始アドレス、サイズを指定する必要があります。範囲サイズは、サイズを指定して明示的に指定するか、範囲の終了アドレスを指定して暗黙的に指定できます。終了アドレスが範囲に含まれ、ゼロサイズ領域にはアドレスのみが含まれます。メモリがどこでラップされるかが認識されているため、範囲がアドレスゼロをスナップしたり、そのような範囲が符号なし値で表現したりできます。
repeatパラメータは、各繰返しに1つずつ、複数の範囲を含むRegionリテラルを作成します。これは、バンクまたはfar領域で便利です。
例
/* The 5-byte size range spans over the address zero */ [from -2 to 2] /* The 512-byte size range spans over zero, in a 64-Kbyte memory */ [from 0xFF00 to 0xFF] /* Defining several ranges in the same memory, a repeating literal */ [from 0 size 0x100 repeat 3 displacement 0x1000] /* Resulting in a region containing: [from 0 size 0x100] [from 0x1000 size 0x100] [from 0x2000 size 0x100] */