PIC Assembler Version 3.0
Users Manual


■はじめに



■ソースファイルの作成



■数値
数値はそのまま記述すると10進数として認識します。末尾にbを付けると2進数 hを付けると16進数表記として記述することが可能です。16進数でA-Fの値から 始まる数値を記述する場合には頭に0が必要となります。これはラベルと区別する為です。 他に2進数・16進数については桁の間に_(アンダースコア)をいれて数値を見やすく 記述することが可能です。

[例]

	123,456,-10,19999
	123h,0afh,0ffh,0ff_eeh
	11111b,0010010b,11_000_111b



■式
式はどちらかというとC言語に近いイメージで記述できます。違うのは剰余の計算が %ではなくMODという演算子を使うことくらいです。演算子の優先順位については別表を ご覧ください。 ※内部では32ビットの整数演算を行っているため、次のzの値は08000hとなりますので 注意してください。

	x	equ	08000h
	y	equ	x<<16
	z	equ	y>>16

PAには括弧という一見配列のような変数を使用することができます。これは連続したレジスタを配列の 様に見せかけているだけで加算することと全く同じ扱いです。

	x	ds	2

;---A---
		add	x[0],#1		; 下位桁に1を加算
		btfsc	c		; Cが立っていないときはスキップ
		inc	x[1]		; 上位桁に1を加算
;---B---
		add	x,#1		; 下位桁に1を加算
		btfsc	c		; Cが立っていないときはスキップ
		inc	x+1		; 上位桁に1を加算
AのルーチンとBのルーチンの生成される機械語コードは全く同じものです。xという変数が2バイト変数で あることが区別し易いと思います。しかし落とし穴もあってxが1バイトで定義してあっても、x[1],x[2],x[3] のような使い方について警告やエラーを発したりはしません。将来にはチェックする機能も設けようとはしています。



◆アセンブラ疑似命令一覧



◇アセンブラ演算子一覧

◇アセンブラ定数一覧

◇マクロ命令

◇条件アセンブル時の比較演算子一覧



◆リファレンス



■PAインストラクションセット


◇Microchipインストラクションセット

メールはこちらにお願いします。
pa3@mypaso.com