PIC命令一覧(ジャンプ命令)


【記号説明】
下記説明で使用している記号、略号の意味は下記による。

記号

意味内容

記号

意味内容

レジスタのアドレス

Wreg

ワーキングレジスタ

b

ビットのアドレス(0-7)

k

リテラルデータ(1byte)

x

Don't care(0にしておく)

d

格納先指定(0 or 1)

label

ラベル名

PC

プログラムカウンタ

dest

dと同じ意味

 

 

[ ]

省略可能

( )

内容

< >

レジスタビット位置

 

 

【ジャンプ命令詳細】

【CALL】 サブルーチンにジャンプする

書式     [label]  CALL  k
オペランド   k:リテラルデータ(00〜2048)
実行内容   (PC)+1 → スタック
        k → PC<10:0>
       (PCLATH<4:3>) → PC<12:11>
影響フラグ  無し
サイクル   2サイクル
機械語    1 0 0 k k k k k k k k k k k
実行内容   サブルーチンをコールする。まず戻り番地
       (PC+1)をスタックに格納し、11ビットのリテラル
       アドレスをPCレジスタに上書きし、さらにPCの
       上位にPCLATHを上書きすることでジャンプ
       します。

【GOTO】 指定番地にジャンプする

書式     [label]  GOTO  k
オペランド  k:リテラルデータ(00〜2048)
実行内容   k → PC<10:0>
       (PCLATH<4:3>)→ PC<12:11>
影響フラグ  無し
サイクル   2サイクル
機械語    1 0 1 k k k k k k k k k k k
実行内容   無条件で指定番地へジャンプする。
       11ビットのリテラルアドレスをPCレジスタに
       上書きし、さらにPCの上位にPCLATHを
       上書きすることでジャンプします。


【RETURN】 サブルーチンから無条件復帰する

書式     [label]  RETURN
オペランド  無し
実行内容   スタック → PC         
影響フラグ  無し
サイクル   2サイクル
機械語    0 0 0 0 0 0 0 0 0 0 1 0 0 0
実行内容   サブルーチンから無条件復帰する。
       スタックに格納されていた戻り番地を
       PCレジスタに上書きすることでジャンプ
       します。

【RETFIE】 割り込みから復帰する

書式     [label]  RETFIE
オペランド   無し
実行内容   スタック → PC
          1 → GIE         
影響フラグ  無し
サイクル   2サイクル
機械語    0 0 0 0 0 0 0 0 0 0 1 0 0 1
実行内容   割り込み処理から復帰する。
       スタックに格納されていた戻り番地を
       PCレジスタに上書きすることでジャンプ
       し、同時に、グローバル割り込み許可
       ビットであるGIEに1をセットして割り込み
       を許可します。


【RETLW】 リテラルデータをWregにセットして復帰する

書式     [label]  RETLW  k
オペランド  k:リテラルデータ(0〜255)
実行内容   k → Wreg 、 スタック → PC         
影響フラグ  無し
サイクル   2サイクル
機械語    1 1 0 1 x x k k k k k k k k
実行内容   サブルーチンから復帰する。その時
       Wregにリテラルデータを持って戻る。
       まず8ビットのリテラルデータをWregに
       ロードし、次にスタックに格納されていた
       戻り番地をPCレジスタに上書きすることで
       ジャンプします。




   次のページへ        目次ページへ