.BSEG


アセンブラにビット・セクションの開始を指示します。

[指定形式]

シンボル欄
ニモニック欄
オペランド欄
コメント欄
[セクション名]
.BSEG
[再配置属性]
[; コメント]

[機能]

-

.BSEG疑似命令は,アセンブラにビット・セクションの開始を指示します。

-

.BSEG疑似命令以降,再びセクション定義疑似命令が現れるまで,ビット・セクションに属します。

[詳細説明]

-

プログラム中でビットのデータ定義を行う部分を本疑似命令により定義します。
本疑似命令は,次にセクション定義疑似命令が記述されるまで有効です。

-

本疑似命令は,オペランド欄にBIT_ATを指定することにより開始アドレスを指定することができます。
このときのセクション名は,指定されたセクション名+“_AT”+指定アドレス(ただし,prefix(0x,0X)およびsuffix(h,H)が付かない大文字の16進表記)となります。

-

次に,.BSEGの指定可能な再配置属性を示します。

表 5.18

.BSEGの再配置属性

再配置属性

記述形式

デフォルトのセクション名

説明

整列条件のデフォルト値

SBSS_BIT

SBSS_BIT

.sbss_bit

初期値を持たないビット用のセクションをsaddr領域注1内で先頭が偶数番地になるように配置します。最適化リンカは本セクションをバイト単位で結合し,再配置属性をSBSSとして扱います。注4注5

2

BSS_BIT

BSS_BIT

.bss_bit

初期値を持たないビット用のセクションをRAM領域注1内の0xF0000〜0xFFFFF番地内に,先頭が偶数番地になるように,64KB - 1境界注2にまたがらないように配置します。最適化リンカは本セクションをバイト単位で結合し,再配置属性をBSSとして扱います。注4注6

2

BIT_AT△アドレス

BIT_AT 絶対式注3

なし

初期値を持たないビット用のセクションを指定番地に配置します。最適化リンカは本セクションをバイト単位で結合し,再配置属性をBSS_ATとして扱います。注4注7

1(固定)

注 1.

コード・フラッシュ領域,ミラー領域,RAM領域,saddr領域についてはデバイスのユーザーズ・マニュアルを参照してください。ただし,RAM領域については,アドレス範囲が0xF0000〜0xFFFFFである内部RAMのみサポートします。

注 2.

配置の境界制限について,デフォルトの設定を64KB - 1境界とします。

注 3.

絶対式として不正な記述をした場合,または0x00000〜0xFFFFFの範囲を越える場合はエラーとなります。

注 4.

再配置属性SBSSとSBSS_BIT,再配置属性BSSとBSS_BIT,再配置属性BSS_ATとBIT_ATの同名セクションは,アセンブラ内部で連続した1つのセクションとして処理します。

注 5.

セクションを再配置属性SBSSとしてオブジェクト・ファイルに出力し,最適化リンカは再配置属性SBSSとして配置します。

注 6.

セクションを再配置属性BSSとしてオブジェクト・ファイルに出力し,最適化リンカは再配置属性BSSとして配置します。

注 7.

セクションを再配置属性BSS_ATとしてオブジェクト・ファイルに出力し,最適化リンカは再配置属性BSS_ATとして配置します。

-

本疑似命令で定義したセクション中に記述できる命令は,.DBIT,.EQU,.SET,.PUBLIC,.EXTBIT,.EXTERN疑似命令およびマクロ呼び出しです。
他の機械語命令や疑似命令を記述した場合はエラーとなります。

-

セクション名の指定がないセクション定義には,アセンブラが再配置属性ごとにデフォルトのセクション名を与えます。
次に,付与されるセクション名を示します。

再配置属性

セクション名

SBSS_BIT

.sbss_bit

BSS_BIT

.bss_bit

BIT_AT△アドレス

.bit_AT 開始アドレス

 

上記のセクション名は上記の再配置属性を持つものとし,別の再配置属性を指定することはできません。

 

-

再配置属性の指定がないセクション定義は,再配置属性“SBSS_BIT”となります。

-

セクション名に指定可能な文字は下記です。

-

英数字(0〜9, a〜z,A〜Z)

-

英字相当文字(@, _,.)

[使用例]

SBSS_BIT属性のセクション“.sbss_bit”を定義

.sbss_bit   .BSEG   SBSS_BIT
sym01       .DBIT

 

BSS_BIT属性のセクション“_B”を定義

_B      .BSEG   BSS_BIT
        .DBIT
sym02   .DBIT

 

BIT_AT属性のセクション“EX”を0xffe20番地指定で定義

セクション名は“EX_ATFFE20”となります。

EX      .BSEG   BIT_AT 0xffe20
sym03   .DBIT
        .DBIT