目次
→
PIC入門
PIC16シリーズの命令仕様 (1)
命令一覧
ADDLW
リテラルデータ と Wレジスタ との加算
書式
[label]
ADDLW
k
( label は省略可
はスペースを示す )
オペランド
k:リテラルデータ ( 00(00h) 〜 255(FFh) )
実行内容
リテラルデータとWレジスタの内容の加算を実行する。
( 例 )
影響フラグ
8ビットがオーバーフローした場合、Cフラッグに 1 を設定
下位4ビットがオーバーフローした場合、DCフラッグに 1 を設定
結果が 0 の場合、Zフラッグに 1 を設定
上記以外の場合、C、DC、Zに 0 を設定
命令実行
サイクル
1サイクル
ADDWF
f レジスタ と W レジスタ との加算
書式
[label]
ADDWF
f, d
( label は省略可
はスペースを示す )
オペランド
f:ファイル・レジスタのアドレス ( 00(00h) 〜 127(7Fh) )
d:結果格納先 ( 0 または 1 )
実行内容
f レジスタと Wレジスタの内容の加算を実行する。
d = 0 なら結果をWレジスタに上書きする。
d = 1 なら結果を f レジスタに上書きする。
( 例 )
影響フラグ
8ビットがオーバーフローした場合、Cフラッグに 1 を設定
下位4ビットがオーバーフローした場合、DCフラッグに 1 を設定
結果が 0 の場合、Zフラッグに 1 を設定
上記以外の場合、C、DC、Zに 0 を設定
命令実行
サイクル
1サイクル
ANDLW
リテラルデータ と Wレジスタ との論理AND演算
書式
[label]
ADDLW
k
( label は省略可
はスペースを示す )
オペランド
k:リテラルデータ ( 00(00h) 〜 255(FFh) )
実行内容
リテラルデータとWレジスタの内容の論理AND演算を実行する。
( 例 )
影響フラグ
演算結果が 0 の場合、Zフラッグに 1 を設定
演算結果が 0 でない場合、Zフラッグに 0 を設定
命令実行
サイクル
1サイクル
ANDWF
f レジスタ と W レジスタ との論理AND演算
書式
[label]
ANDWF
f, d
( label は省略可
はスペースを示す )
オペランド
f:ファイル・レジスタのアドレス ( 00(00h) 〜 127(7Fh) )
d:結果格納先 ( 0 または 1 )
実行内容
f レジスタと Wレジスタの内容の論理AND演算を実行する。
d = 0 なら結果をWレジスタに上書きする。
d = 1 なら結果を f レジスタに上書きする。
( 例 )
影響フラグ
演算結果が 0 の場合、Zフラッグに 1 を設定
演算結果が 0 でない場合、Zフラッグに 0 を設定
命令実行
サイクル
1サイクル
次の命令