セクションって何?

【セクションについての補足】

それぞれのセクションの意味は、以下の通り。

  1. Pセクション プログラムを置く場所
  2. Cセクション   定数
  3. Dセクション   初期値のあるグローバル変数、static宣言されたローカル変数
  4. Bセクション   初期値の無いグローバル変数
  5. Sセクション   スタック(ローカル変数、その他)

今回は、初期値の無いグローバル変数を使うので、Bセクションを定義する。

H8/3052Fのメモリは、以下の様になっている。(モード7・シングルチップアドバンスドモードの場合) P~Sの各セクションは、「ユーザプログラム・変数等の領域」に、お互いのセクションが交差しないように配置する事。(交差するとビルド時にエラーが発生するので、そこで確認してもよい)

また、「注1)セクションに関するワーニングについて」の項も参考にすること。

※注1)セクションに関連するワーニングについて

① 最適化リンカのセクションタブで「B」セクションを定義しているが、プログラム中でBセクションを使っていない場合は、

 L1100 (W) Cannot find "B" specified in option "start"

の様なワーニングが出る。

②プログラム中ではBセクションを使っているが、最適化リンカのセクションタブで「B」セクションが定義されていない場合

L1120 (W) Section address is not assigned to "D"

※①のワーニングは実害はなし。②については対策が必要な事もあるので、出来るだけ消すようにした方が良い。

最終更新:2014年02月28日 18:14