2.1 概要
2.1.2 アセンブラオプションの詳細な説明
-Dmacro[=def]
-L[flag...]
-M[s|c|d|l]
-V -c -e -err -f file -i[l|g]
-l -o filename -t -v -w[num]
説 明 fileをソースの前にインクルードします。
プリプロセッサmacroを定義します。
指定されたソース行をリストファイルから削除します。
メモリモデルを指定します。
バージョンヘッダのみを表示します。
大文字と小文字を区別しないモードに切り換えます(デフォルトでは区別する)。
アセンブリエラーの場合、オブジェクトファイルを削除します。
エラーメッセージをエラーファイルにリダイレクトします。
オプションをfileから読み込みます。
デフォルトのラベルスタイルをローカルまたはグローバルとして指定します。
リストファイルを生成します。
出力ファイルの名前を指定します。
セクションの要約を表示します。
冗長モード。進行中にファイル名とパスの回数をプリントします。
1つまたはすべての警告メッセージを抑制します。
2.1.2 アセンブラオプションの詳細な説明 -C
オプション:
-C file 引数:
インクルードファイルの名前。
説明:
ソースのアセンブルの前にfileをインクルードします。
例:
他のインクルードファイルの前にs1c88.incをインクルードする場合は、次のコマンドを入力します。
as88 -C s1c88.inc test.src
-c
オプション:
-c デフォルト:
大文字と小文字を区別。
説明:
大文字と小文字を区別しないモードに切り換えます。デフォルトの場合アセンブラは大文字と小文字を 区別するモードで動作します。
例:
大文字と小文字を区別しないモードに切り換える場合は、次のコマンドを入力します。
as88 -c test.src
-D
オプション:
-Dmacro[=def]
引数:
定義したいマクロ。オプションでその定義。
説明:
macroを"define"のように定義します。defが指定されていない("="がない)場合、"1"が指定されたものと 見なされます。シンボルはいくつでも定義できます。
例:
as88 -DTWO=2 test.src
-e
オプション:
-e 説明:
アセンブラでエラーが発生したとき、オブジェクトファイルが生成されないようにする場合、このオプ ションを使用します。このオプションを使用すると、"make"ユーティリティが常に正しいファイルを作 成するようになります。
例:
as88 -e test.src
-err
オプション:
-err 説明:
アセンブラが、出力ファイルと同じベース名に拡張子.ersを付けたファイルに、エラーメッセージを リダイレクトします。アセンブラは、入力ファイルではなく、出力ファイルのベース名を使用します。
例:
エラーをstderrの代わりにtest.ersに書き込む場合、次のコマンドを実行します。
as88 -err test.src
-f
オプション:
-f file 引数:
コマンド行処理に使用するファイル名。標準入力を示すときは、ファイル名"-"を使用できます。
説明:
コマンド行処理のためにfileを使用します。コマンド行のサイズ制限を回避するために、コマンドファ イルを使用することができます。これらのコマンドファイルに入れるオプションは、実際のコマンド行 では使用できないものです。コマンドファイルは、makeユーティリティなどを使用して簡単に作成でき ます。
-fオプションは複数使用することができます。
コマンドファイルの書式には、次のような簡単な規則があります。
1. コマンドファイルの同じ行に複数の引数を指定することができます。
2. 引数にスペースを入れるときは、その引数を一重引用符または二重引用符で囲みます。
3. 引用符の付いた引数の中で一重引用符または二重引用符を使用する場合、次の規則に従います。
a. 中に入っている引用符が、一重引用符のみまたは二重引用符のみの場合、引数を囲むときもう一 方の引用符を使用します。つまり、引数に二重引用符が含まれる場合、引数を一重引用符で囲み ます。
b. 両方の引用符が使用されている場合、それぞれの引用符がもう一方の引用符で囲まれるような形 で、引数を分割する必要があります。
例:
"This has a single quote ' embedded"
または
'This has a double quote " embedded' または
'This has a double quote " and a single quote '"' embedded"
4. オペレーティングシステムによっては、テキストファイル内の行の長さに制限がある場合がありま す。この制限を回避するため、継続行を使用することができます。これらの行は、最後にバックス ラッシュと改行が付きます。引用符の付いた引数の場合、継続行は、次の行のスペースを取らない でそのままつなげられます。引用符が付いていない引数の場合、次の行にあるすべてのスペースが 削除されます。
例:
"This is a continuation ¥ line"
→ "This is a continuation line"
control(file1(mode,type),¥
file2(type))
→ control(file1(mode,type),file2(type)) 5. コマンド行ファイルは、最高で25レベルまでネストすることができます。
例:
ファイルmycmdsに次の行があると仮定します。
-err test.src
コマンド行は、次のようになります。
as88 -f mycmds
-i
オプション:
-i[l¦g]
デフォルト:
-il(ローカルラベル)
説明:
ラベル識別子のデフォルト処理を選択します。-ilの場合、データおよびコードアセンブリのラベルは、
GLOBAL擬似命令で指定を上書きしていない限り、デフォルトでLOCALラベルとして扱われます。-ig の場合、データおよびコードアセンブリのラベルは、LOCAL擬似命令で指定を上書きしていない限り、
デフォルトでGLOBALラベルとして扱われます。
例:
アセンブリラベル識別子が、デフォルトでGLOBALラベルとして扱われるよう指定する場合、次のコマ ンドを入力します。
as88 -ig test.src
-L
オプション:
-L[flag...]
引数:
オプションで、リストファイルから削除されるソース行を指定するフラグ(複数指定可)。 デフォルト:
-LcDEGlMnPQsWXy 説明:
リストファイルから削除されるソース行を指定します。リストファイルは、-lオプションが指定された ときに生成されます。-Lオプションを指定しない場合、アセンブラは、#line擬似命令またはシンボリッ クデバッグ情報が含まれるソース行および空のソース行を削除し、折り返されたソース行を1行にしま す。フラグを付けないで-Lを指定した場合、-Lcdeglmnpqswxyと同等になり、指定されたすべてのソー ス行がリストファイルから削除されます。
フラグは、小文字のときオンになり、大文字のときオフになります。次のようなフラグを使用すること ができます。
c デフォルト。アセンブラコントロール(OPTIMIZE擬似命令)を含むソース行が削除されます。
C アセンブラコントロールを含むソース行がそのまま保持されます。
d セクション擬似命令(DEFSECT、SECT擬似命令)を含むソース行が削除されます。
D デフォルト。セクション擬似命令を含むソース行がそのまま保持されます。
e EXTERN、GLOBAL、LOCALなどのシンボル定義擬似命令を含むソース行が削除されます。
E デフォルト。シンボル定義擬似命令を含むソース行がそのまま保持されます。
g 包括的命令展開が削除されます。
G デフォルト。包括的命令展開がそのまま保持されます。
l デフォルト。Cプリプロセッサ行情報(#lineの行)を含むソース行が削除されます。
L Cプリプロセッサ行情報を含むソース行がそのまま保持されます。
m マクロ/繰り返し擬似命令を含むソース行(MACRO、DUPがある行)が削除されます。
M デフォルト。マクロ/繰り返し擬似命令を含むソース行がそのまま保持されます。
n デフォルト。空のソース行(改行のみの行)が削除されます。
N 空のソース行がそのまま保持されます。
p 条件アセンブラを含むソース行(IF、ELSE、ENDIFがある行)が削除されます。有効な条件のみが残 されます。
P デフォルト。条件アセンブラを含むソース行がそのまま保持されます。
q アセンブラ定数定義を含むソース行(EQUがある行)が削除されます。
Q デフォルト。アセンブラ定数定義を含むソース行がそのまま保持されます。
s デフォルト。高レベル言語のシンボリックデバッグ情報を含むソース行(SYMBがある行)が削除さ れます。
S HLLのシンボリックデバッグ情報を含むソース行がそのまま保持されます。
w ソース行の折り返し部分が削除されます。
W デフォルト。ソース行の折り返し部分がそのまま保持されます。
x MACRO/DUP展開を含むソース行が削除されます。
X デフォルト。MACRO/DUP展開を含むソース行がそのまま保持されます。
y デフォルト。サイクルカウントを非表示にします。
Y サイクルカウントを表示します。
例:
生成されるリストファイルから、アセンブラコントロールが含まれるソース行を削除して、折り返され たソース行を削除する場合、次のコマンドを入力します。
as88 -l -Lcw test.src
-l
オプション:
-l 説明:
リストファイルを生成します。リストファイルには、出力ファイルと同じベース名が付けられます。拡 張子は、.lstになります。
例:
test.lstという名前のリストファイルを生成する場合、次のコマンドを入力します。
as88 -l test.src 参照:
-L
-M
オプション:
-Mmodel 引数:
使用するメモリモデル。modelは次のいずれかになります。
s スモール 最大64Kのコードとデータ。
c コンパクトコード 最大64Kのコードと16Mのデータ。
d コンパクトデータ 最大8Mのコードと64Kのデータ。
l ラージ 最大8Mのコードと16Mのデータ。
デフォルト:
-Ml 説明:
ソースファイルのアセンブルに使用されるメモリモデルを指定します。異なるモデルのアセンブラモ ジュールは、一緒にリンクすることができません。
例:
バンク1モデルを使用してアセンブルする場合、次のコマンドを入力します。
as88 -Ms test.src
-o
オプション:
-o filename 引数:
出力ファイルの名前。ファイル名はオプションの直後に続けられません。オプションの後にタブまたは スペースを入れる必要があります。
デフォルト:
アセンブラファイルのベース名に.obj接尾辞を付けたもの。
説明:
アセンブラファイルのベース名+.obj拡張子の代わりに、filenameをアセンブラの出力ファイル名とし て使用します。
例:
ジャンプおよび分岐の最適化を有効にする場合、次のコマンドを入力します。
as88 test.src -o myfile.obj