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

TST

TST

テスト (てすと)


TST.B <ea>

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

命令コード

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

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

モードレジスタr<ea>680006801068020680306804068060
000rDr4(1/0)4(1/0)🚧🚧🚧🚧
1(Ar)8(2/0)8(2/0)
1(Ar)+
100-(Ar)10(2/0)10(2/0)
1(d16,Ar)12(3/0)12(3/0)
10(d8,Ar,Xn)14(3/0)14(3/0)----
(d8,Ar,Xn*sf)--🚧🚧🚧🚧
(bd,Ar,Xn*sf)
([bd,Ar,Xn*sf],od)
([bd,Ar],Xn*sf,od)
1000(xxx).W12(3/0)12(3/0)
1(xxx).L16(4/0)16(4/0)

コンディションコード

フラグ入力出力説明
X使用しない変化しない
N変化する結果の最上位ビット
Z結果が 0 のときセット、さもなくばクリア
V常にクリア
C

解説

  1. <ea> が指すバイト(Dr のとき最下位バイト)を読み出して Xb とします。
  2. Xb をテストしてフラグを操作します。

TST.B <ea> の動作は CMPI.B #$00,<ea> とほぼ同じです。


TST.B <ea>

68020/68030/68040/68060 の命令

命令コード

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

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

モードレジスタr<ea>68020680306804068060
111010(d16,PC)🚧🚧🚧🚧
1(d8,PC,Xn)----
(d8,PC,Xn*sf)🚧🚧🚧🚧
(bd,PC,Xn*sf)
([bd,PC,Xn*sf],od)
([bd,PC],Xn*sf,od)
100#<data>

コンディションコード

フラグ入力出力説明
X使用しない変化しない
N変化する🚧
Z
V常にクリア
C

解説

🚧


TST.W <ea>

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

命令コード

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

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

モードレジスタr<ea>680006801068020680306804068060
000rDr4(1/0)4(1/0)🚧🚧🚧🚧
1(Ar)8(2/0)8(2/0)
1(Ar)+
100-(Ar)10(2/0)10(2/0)
1(d16,Ar)12(3/0)12(3/0)
10(d8,Ar,Xn)14(3/0)14(3/0)----
(d8,Ar,Xn*sf)--🚧🚧🚧🚧
(bd,Ar,Xn*sf)
([bd,Ar,Xn*sf],od)
([bd,Ar],Xn*sf,od)
1000(xxx).W12(3/0)12(3/0)
1(xxx).L16(4/0)16(4/0)

コンディションコード

フラグ入力出力説明
X使用しない変化しない
N変化する結果の最上位ビット
Z結果が 0 のときセット、さもなくばクリア
V常にクリア
C

解説

  1. <ea> が指すワード(Dr のとき下位ワード)を読み出して Xw とします。
  2. Xw をテストしてフラグを操作します。

TST.W <ea> の動作は CMPI.W #$0000,<ea> とほぼ同じです。


TST.W <ea>

68020/68030/68040/68060 の命令

命令コード

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

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

モードレジスタr<ea>68020680306804068060
001rAr🚧🚧🚧🚧
11010(d16,PC)
1(d8,PC,Xn)----
(d8,PC,Xn*sf)🚧🚧🚧🚧
(bd,PC,Xn*sf)
([bd,PC,Xn*sf],od)
([bd,PC],Xn*sf,od)
100#<data>

コンディションコード

フラグ入力出力説明
X使用しない変化しない
N変化する🚧
Z
V常にクリア
C

解説

🚧


TST.L <ea>

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

命令コード

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

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

モードレジスタr<ea>680006801068020680306804068060
000rDr4(1/0)4(1/0)🚧🚧🚧🚧
1(Ar)12(3/0)12(3/0)
1(Ar)+
100-(Ar)14(3/0)14(3/0)
1(d16,Ar)16(4/0)16(4/0)
10(d8,Ar,Xn)18(4/0)18(4/0)----
(d8,Ar,Xn*sf)--🚧🚧🚧🚧
(bd,Ar,Xn*sf)
([bd,Ar,Xn*sf],od)
([bd,Ar],Xn*sf,od)
1000(xxx).W16(4/0)16(4/0)
1(xxx).L20(5/0)20(5/0)

コンディションコード

フラグ入力出力説明
X使用しない変化しない
N変化する結果の最上位ビット
Z結果が 0 のときセット、さもなくばクリア
V常にクリア
C

解説

  1. <ea> が指すロングワード(Dr のとき全体)を読み出して Xl とします。
  2. Xl をテストしてフラグを操作します。

TST.L <ea> の動作は CMPI.L #$00000000,<ea> とほぼ同じです。


TST.L <ea>

68020/68030/68040/68060 の命令

命令コード

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

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

モードレジスタr<ea>68020680306804068060
001rAr🚧🚧🚧🚧
11010(d16,PC)
1(d8,PC,Xn)----
(d8,PC,Xn*sf)🚧🚧🚧🚧
(bd,PC,Xn*sf)
([bd,PC,Xn*sf],od)
([bd,PC],Xn*sf,od)
100#<data>

コンディションコード

フラグ入力出力説明
X使用しない変化しない
N変化する🚧
Z
V常にクリア
C

解説

🚧