Home > Tutorial > Lesson 4

2003.10.26

CASLU & COMETU

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に変えて動作を理解しましょう.

JOVの動作確認

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