Home > Tutorial > Lesson 4 |
|
条件分岐命令は,ある条件が成り立つときには分岐を行い,その条件が成立しなければ分岐をしません.命令の書き方は無条件分岐と同じです.条件分岐命令には以下の種類があります.
条件が成り立たないときは,直後の命令を実行することになります.
以下のプログラムをWCASLUのCASLモードで実行して,JPLの動作を確認してみましょう.(AA)と(BB)の値をいろいろ変えてやってみなさい.RETが2つあるプログラムですが,分岐をすれば,下のRETまで実行されますが,条件を満たさない場合は分岐をしないので,上のRETまでで終了するはずですね.
PJMP START LD GR1,AA CPA GR1,BB JPL SKIP LAD GR2,7 ST GR2,ANS RET SKIP ST GR1,ANS RET AA DC 5 BB DC 3 ANS DS 1 END
同様に,JPLをJMI,JZE,JNZに変えて動作を理解しましょう.
CPAではOF(オーバーフローフラグ)が立たないので,JOVの動作を調べることができません.以下のプログラムでJOVの動作を確認しましょう.算術加算の結果が32767を超えるとオーバーフローになるはずです.
PJMP START LD GR1,AA ADDA GR1,BB JOV SKIP LAD GR2,7 ST GR2,ANS RET SKIP ST GR1,ANS RET AA DC 30000 BB DC 10000 ANS DS 1 END