【ソースコード】
ソースコードとは、プログラムの命令をアセンブラで書いたものそのもの
のことを指しています。
ソースコードは、アセンブラに適したフォーマットで書かれている必要が
あり、以下はその書き方を説明します。
【基本フォーマット】
ソースコードの各行は下記の基本フォーマットで書きます。
フォーマット
Label Mnemonic Operand Comment
注1 Labelは行の先頭から始まっていなければならない
注2 MnemonicでLabelが無い時は先頭に1個以上のスペース
が必要
注3 Commentはどこから始まっても良い
注4 1行は255文字以下
注5 それぞれの項は1個以上のスペースで分離される
注6 1行に複数のフォーマットを「,」で区切って書くことができる
LabelLabelは各行の先頭から始まっていなければなりません。また
含まれる文字は、アルファベットかアンダーバー(_)で始まる英
数字でなければならない。Labelは32文字以下の長さまでで、
大文字、小文字の区別があります。ただし、大小文字の区別
は環境設定で無くすこともできます。Mnemonic
アセンブラー命令と指示命令(擬似命令)は、行の先頭から
1個以上のスペースが無ければならない。Labelがある場合
は、Labelの次に1個以上のスペースかコロン(:)が必要。Operand
OperandはMnemonicの次に1個以上のスペースかタブで
分離される。また複数のOperandが必要な場合には「,」で
分離する。Comment
セミコロン(;)に続く文節は全てコメントとされる。
そしてアセンブルでは無視されオブジェクトには何も関係が
無い。文字定数としてセミコロンを使うことは問題無い。
【ソースコードの例】
下記は上記条件に則ったMPASMのソースコードの例です。
;
; Sample MPASM Source Code. For illustration only.
;
list p=16c54
Dest equ H'0B'
org H'01FF' ;Interrupt Vector
goto Start
org H'0000' ;Program Start
Start movlw H'0A'
movwf Dest
goto Start
end
【数値の表現方法】
数値を定数として使う時のソースコードの書き方には、10進数、
16進数、8進数、2進数、ASCIIコードがあります。それぞれの
書き方は下表です。
形 式
書 き 方
実際の例
10進数
(Decimal)D'<digits>' D'100' 16進数
(Hexadecimal)H'<hex_digits>'
0<hex_digits>HH'9f'
0AFH8進数
(Octal)O'<octal_digits>' O'777' 2進数
(Binary)B'<binary_digits>' B'00111001' ASCIIコード '<character>
A'<character>'''C'
A'C'