4.比較演算命令

  

CASLでは比較命令はあくまでも比較演算を行うだけです。
分岐命令と組み合わせてIFと同等の動作をさせます。
ここでは、比較演算命令についてのみ取り上げます。
具体的な選択構文は分岐命令を参照してください。 (D 分岐命令

 

(1)CPA命令 算術比較をする命令

記述方法

ラベル

CPA

r,アドレス[,x]

この命令は内部的に(r – アドレスの中身)という減算を行い、結果をフラグレジスタへ格納します。

減算命令との違いは結果が減算の値ではなく、減算をした結果が正なのか負なのか零なのかをフラグレジスタに格納するということです。

プログラム例.

PRG_CPA

START

 

 

LD

GR0,DATA1 ;レジスタへデータを読み込む

 

CPA

GR0,DATA2 ;GR0へDATA2の中身を比較

 

RET

;プログラム終了

DATA1

DC

1 ;データを定義

DATA2

DC

2 ;データを定義

 

END

 

  メニューへ戻る

 

(2)CPL命令 論理比較をする命令

記述方法

ラベル

CPL

r,アドレス[,x]

この命令は内部的に(r – アドレスの中身)という減算を行い、結果をフラグレジスタへ格納します。

減算命令との違いは結果が減算の値ではなく、減算をした結果が正なのか負なのか零なのかをフラグレジスタに格納するということです。

論理演算とはアドレスの中身を符号を取り扱わない数(正の数)として演算を行います。

プログラム例.

PRG_CPL

START

 

 

LD

GR0,DATA1 ;レジスタへデータを読み込む

 

CPA

GR0,DATA2 ;GR0へDATA2の中身を比較

 

RET

;プログラム終了

DATA1

DC

1 ;データを定義

DATA2

DC

2 ;データを定義

 

END

 

PRG_CPA

START

 

 

LD

GR0,DATA1 ;レジスタへデータを読み込む

 

 

  メニューへ戻る

 

 

 

 

---

トップページWhatsNewCASL2000CASL入門コーナーメール