目次PIC入門


疑似命令一覧




MPASMには58種類の疑似命令(Directives) があります。通常使用する疑似命令はこの内の一部です。

[ ]省略可能なオプションexprexpression (式)
< >付加オプション
スペース
|いずれかの選択




疑似命令機能内容書式
_ _BADRAM 不正RAM領域の指定
使用禁止として、使うとアラームを出力
_ _badram<expr>[-<expr>][,<expr>[-<expr>]]
BANKISEL間接アドレッシング用にRAMのBank選択命令を挿入bankisel<label>
BANKSELRAMのBank選択命令を挿入banksel<label>
CBLOCK定数領域を指定cblock[<expr>]
ENDCendc
CODEプログラム領域の開始を宣言[<name>]code[<address>]
_ _CONFIGコンフィギュレーションビットの設定_ _config<expr>
CONSTANTラベルの定義constant<label>[=<expr>,...,<label>[=<expr>]]
DAプログラムメモリに文字を格納[<label>]da<expr>[,<expr>,...,<expr>]
DATA英数字のデータをプログラムメモリに確保 [<label>]data<expr>[,<expr>,...,<expr>]
[<label>]data"<text_string>"[,"<text_string>",...]
DB1バイトのデータをプログラムメモリに確保 [<label>]db<expr>[,<expr>,...,<expr>]
[<label>]db"<text_string>"[,"<text_string>",...]
DEEEPROM内にデータを定義 [<label>]de<expr>[,<expr>,...,<expr>]
[<label>]de"<text_string>"[,"<text_string>",...]
#DEFINEテキストを代表するラベルの定義 #define<name>[<value>]
#define<name>[<arg>,...,<arg>]<value>
#UNDEFINE定義したラベルの解除#undefine<label>
DT連続したRETLW命令のテーブルを作成 [<label>]dt<expr>[,<expr>,...,<expr>]
[<label>]dt"<text_string>"[,"<text_string>",...]
DW1ワードのデータをプログラムメモリに確保 [<label>]dw<expr>[,<expr>,...,<expr>]
[<label>]dw"<text_string>"[,"<text_string>",...]
ENDソースファイルの終わりを宣言end
EQU定数のラベルを定義<label>equ<expr>
ERRORエラーメッセージの出力error"<text_string>"
ERRORLEVELエラーレベルの設定errorlevel"0|1|2 <+|-><message_number>"
EXITMマクロから抜け出るexitm
EXPANDマクロ命令のリスト展開を指定expand
NOEXPANDマクロ命令のリスト展開禁止を指定noexpand
EXTERN外部ラベルの定義extern<label>[,<label>]
FILLメモリへのデータ書き込み[<label>]fill<expr>,<count>
GLOBAL指定ラベルの外部公開を宣言global<label>[,<label>]
IDATA初期化ありのデータ領域を宣言[<name>]idata[<address>]
_ _IDLOCSIDの場所指定を宣言_ _idlocs<expr>
#IF条件判定文#if<expr>
#ELSE#else
#ENDIF#endif
#IFDEFラベルが定義されているかの判定#ifdef<label>
#IFNDEFラベルが未定義かの判定#ifndef<label>
INCLUDE他のソースファイルを取り込むinclude<<include_file>>|"<include_file>"
LISTアッセンブル結果のリスト出力を指定list[<list_optin>,...,<list_option>]
NOLISTアッセンブル結果のリスト出力を禁止nolist
LOCALマクロ内部のみで使う変数を指定local<label>[,<label>]
MACROマクロ定義部の宣言<label>macro[<arg>,...,<arg>]
ENDMマクロ定義部の終わりを宣言endm
_ _MAXRAMRAMの最高位アドレスを指定_ _maxram<expr>
MESSGユーザ定義のメッセージを指定messg"<message_text>"
ORGプログラムの開始番地を指定[<label>]org<expr>
PAGEリストの改ページを指定page
PAGESELROMのPage指定命令を挿入pagesel<label>
PROCESSORPICの種別を指定processor<processor_type>
RADIX数値の進数を指定radix<default_radix>
RESメモリ領域の予約指定[<label>]res<mem_units>
SET変数のラベルを設定<label>set<expr>
SPACEブランクのリストへの挿入を指定space<expr>
TITLEプログラムのタイトルを指定title"<title_text>"
SUBTITLEプログラムのサブタイトルを指定subtitle"<sub_text>"
UDATA初期化しないデータ領域を指定[<name>]udata[<address>]
UDATA_ACS初期化せずに上書きされるデータ領域にアクセス[<name>]udata_acs[<address>]
UDATA_OVR初期化せずに上書きされるデータ領域を指定[<name>]udata_ovr[<address>]
UDATA_SHR初期化されない共有データ領域を指定[<name>]udata_shr[<address>]
VARIABLE変数のシンボルを指定variable<label>[=<expr>,...,<label>[=<expr>]]
WHILE条件が成立するまで繰り返しソースコードを生成while<expr>
ENDWendw