countersince January 6, 2001X68000 LIBRARYEnglish
更新日: 2023 年 3 月 18 日
X68000 LIBRARY > 資料室 > 命令セットリファレンス(準備中) > N > NBCD

NBCD

NBCD

2 進化 10 進符号反転 (えぬびーしーでぃー)


NBCD.B <ea>

68000/68010/68020/68030/68040/68060 の命令

命令コード

アドレス1514131211109876543210
+00100100000モードレジスタr

アドレッシングモードと実行時間

モードレジスタr<ea>680006801068020680306804068060
000rDr6(1/0)6(1/0)🚧🚧🚧🚧
1(Ar)
1(Ar)+
100-(Ar)
1(d16,Ar)
10(d8,Ar,Xn)----
(d8,Ar,Xn*sf)--🚧🚧🚧🚧
(bd,Ar,Xn*sf)
([bd,Ar,Xn*sf],od)
([bd,Ar],Xn*sf,od)
1000(xxx).W6(1/0)6(1/0)
1(xxx).L

コンディションコード

フラグ入力出力説明
X使用しない変化するボローがあるときセット、さもなくばクリア
N未定義68000/68030 は結果の最上位ビット
68060 は変化しない
Z変化する結果が 0 でないときクリア、さもなくば変化しない
V未定義68000 は補正値の減算でオーバーフローしたときセット、さもなくばクリア
68030 は常にクリア
68060 は変化しない
C変化するボローがあるときセット、さもなくばクリア

解説

  1. <ea> が指すバイト(Dr のとき最下位バイト)を読み出して Yb とします。
  2. 0 から Yb と X フラグを 2 進化 10 進数として引いた結果を Zb とします。
  3. 結果に応じてフラグを操作します。
  4. Zb を <ea> が指すバイト(Dr のとき最下位バイト)へ書き込みます。

<ea> が Dr のとき Dr の最下位バイト以外の部分は変化しません。