27 / 36 · 概念
シフトレジスタの状態変化
以前のビットを移動して新しい入力を入れます。
レッスンは無料で読めます。受講登録すると進捗を保存できます。
新しいビットを入れ以前のビットを移す
シフトレジスタは各エッジでビットを一つ移動します。ここでは直列入力dinを3ビットqに入れます。
q <= {q[1:0], din};は以前の下位2ビットにdinを連結します。古いq[2]は捨て、dinが新しいq[0]です。
000へのリセット後、1,0,1,1を入れると001,010,101,011です。各エッジでは更新前の値を使います。
| 以前のq | din | 新しいq |
|---|---|---|
| 000 | 1 | 001 |
| 001 | 0 | 010 |
| 010 | 1 | 101 |
| 101 | 1 | 011 |
実行前に予想しましょう
q=101、din=1ならどのビットが残り、どれを捨てますか?
✓ 学習済み