• ベストアンサー

アセンブラの数値比較

Z80のアセンブラで数値比較を行うにはどのような記述をすればよいのでしょうか? 例)変数に入っている値「10」と変数に入っている値「20」を比較するような場合 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

VDATA1: .db 10 ;変数VDATA1を10で初期化 VDATA2: .db 20 ;変数VDATA2を20で初期化 begin: LD CD,VDATA1 ;変数VDATA1のアドレスを読み込む LD A,(CD) ;アドレスの内容をレジスタAに読み込む LD CD,VDATA2 ;変数VDATA2のアドレスを読み込む LD B,(CD) ;アドレスの内容をレジスタBに読み込む CP B ;A-Bの結果でキャリー設定 JP C,ptn_m ;C(A<B)ならばptn_mへ JP Z,ptn_z ;C(A=B)ならばptn_zへ JP NC,ptn_p ;NZでNC(A>B)ならばptn_pへ ptn_m: ptn_z: ptn_p: ニーモニック表記で記述しました。 詳しくは、参照URLを見てください。

参考URL:
http://www3.ocn.ne.jp/~miotti/ti/asm/
poohpiglet2
質問者

お礼

ご回答ありがとうございます。 具体例まで記述していただき感謝しております。 また何かありました時はよろしく御願い致します。

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

cpで比較して、zeroフラグやcarryフラグで条件付きジャンプを実施すればよいのでは。

参考URL:
http://www.zilog.com/docs/docs2.asp?FAM=220&DT=10,11,13,14,17,19,21,22,23,25,28,30,31,33,34,42,43,44,45,46,47&id=1653
poohpiglet2
質問者

お礼

ご回答ありがとうございます。 また何かありました時はよろしく御願い致します。

関連するQ&A