8ビットのビット列a_[[7]]a_[[6]]a_[[5]]a_[[4]]a_[[3]]a_[[2]]a_[[1]]a_[[0]]を右に循環シフトするシフト回路は、マルチプレクサを利用して、以下のように実現できます。
このシフト回路では、___S___[0]]~___S___[2]]を操作することにより、以下の8種類の循環シフトを行えます。
| ___S___[0]] | ___S___[1]] | ___S___[2]] | |
|---|---|---|---|
| 0ビット右に循環シフト | 0 | 0 | 0 |
| 1ビット右に循環シフト | 1 | 0 | 0 |
| 2ビット右に循環シフト | 0 | 1 | 0 |
| 3ビット右に循環シフト | 1 | 1 | 0 |
| 4ビット右に循環シフト | 0 | 0 | 1 |
| 5ビット右に循環シフト | 1 | 0 | 1 |
| 6ビット右に循環シフト | 0 | 1 | 1 |
| 7ビット右に循環シフト | 1 | 1 | 1 |
8ビットのビット列a_[[7]]a_[[6]]a_[[5]]a_[[4]]a_[[3]]a_[[2]]a_[[1]]a_[[0]]を左に循環シフトするシフト回路は、マルチプレクサを利用して、以下のように実現できます。
このシフト回路では、___S___[0]]~___S___[2]]を操作することにより、以下の8種類の循環シフトを行えます。
| ___S___[0]] | ___S___[1]] | ___S___[2]] | |
|---|---|---|---|
| 0ビット左に循環シフト | 0 | 0 | 0 |
| 1ビット左に循環シフト | 1 | 0 | 0 |
| 2ビット左に循環シフト | 0 | 1 | 0 |
| 3ビット左に循環シフト | 1 | 1 | 0 |
| 4ビット左に循環シフト | 0 | 0 | 1 |
| 5ビット左に循環シフト | 1 | 0 | 1 |
| 6ビット左に循環シフト | 0 | 1 | 1 |
| 7ビット左に循環シフト | 1 | 1 | 1 |