クロス・アセンブラの使用法



セグメント


text, data, bss, constの各セグメントは,以下の使用法を想定しています. (括弧内の値はセグメントのベースアドレスの暗黙値)

  1. text : プログラムのコード用セグメント(0x000)\footnote{0x.. は16進数を表す}
  2. data : プログラムのデータ用セグメント~(0x400)
  3. bss : 初期化を必要としないデータ用セグメント~(0x600)
  4. const : 初期化を必要とするデータ用セグメント~(0x700)

このように各セグメントの使用法を想定していますが,プログラマはこれに 捕らわれずに使用することができます.実際,dataセグメントには定数だけ ではなく,命令コードも作成することが可能です.
各セグメントの配置位置は\kiteasm の引数を用いて変更可能です



後述するように,セグメント指定疑似命令において明示的に配置アドレスを指定した場合には,kiteasm のコマンドラインから配置位置の変更はできません.



text, data, bss, および constの各セグメントの配置位置をそれぞれ 0x700, 0x500, 0x000, 0x800とするには,以下のようにkiteasmを実行します.
%kiteasm -Ttext 700 -Tdata 500 -Tbss 0 -Tconst 800 foo
Text  segment : 00000700
Data  segment : 00000500
BSS   segment : 00000000
Const segment : 00000800
Input  file   : foo.asm 
Output file   : foo.hex 
%
メッセージにより各セグメントの配置位置が変更されていることがわかります. なお,セグメントがオーバラップしている場合,kiteasm はエラーメッセージを出力しません.ユーザの責任でセグメントを配置して下さい.


クロス・アセンブラの使用法-エラーメッセージ-


ホーム もどる 辞書

This is my e-mail address:

arch_www < www@cs.kumamoto-u.ac.jp >
Copyright (C) KITE Microprocessor Project, 1996