シフトレジスタの初期値をリセットする
- 更新日2025-08-27
- 3分で読める
初期化したシフトレジスタを使用して、VIが実行されるたびにシフトレジスタの初期値をリセットします。
シフトレジスタの初期値をリセットするには、次の手順を実行します。
- シフトレジスタを作成します。
- 次のブロックダイアグラムに示されているように、ループの外にある任意の値を左側の端子に配線します。

前のブロックダイアグラムでは、Forループが5回実行され、シフトレジスタの値が反復毎に1つずつ増分されます。Forループを5回反復した後、シフトレジスタは表示器に最後の値である5を渡してVIを終了します。VIを実行するたびに、シフトレジスタは0の値から開始されます。
VIが実行されるたびにシフトレジスタの初期入力が前回の実行からの最終値になるように、初期化されていないシフトレジスタのあるループを使用します。初期化されていないシフトレジスタの場合、後に続くVIの実行間で状態情報を維持するために左のシフトレジスタ端子への入力を未配線にします。
メモ レジスタを初期化しない場合、ループは最後に実行された際にレジスタに書き込まれた値を使用するか、ループがまだ実行されていない場合はデータタイプのデフォルト値を使用します。
以下のブロックダイアグラムは初期化されていないシフトレジスタを示します。
上記のブロックダイアグラムでは、Forループが5回実行され、シフトレジスタの値が反復毎に1つずつ増分されます。VIを初めて実行すると、シフトレジスタは、0の値で開始されます。この0の値は、32ビット整数のデフォルト値です。
Forループを5回反復した後、シフトレジスタは表示器に最後の値である5を渡してVIを終了します。次にVIを実行すると、シフトレジスタは以前に実行した時に最後の値であった5の値で開始します。Forループを5回反復した後、シフトレジスタは表示器に最後の値である10を渡します。
VIを再度実行すると、シフトレジスタは10の値で開始します。初期化されていないシフトレジスタは、VIが閉じられるまで、またはLabVIEWがブロックダイアグラムを再コンパイルするまで、前回反復時の値を保持します。