Registers#
TODO
Shift Registers#
Definition: Shift Register
A shift register is a register capable of shifting the data in each of its cells to the neighboring cell in a specified direction.
Definition: Right Shift Register
A right shift register is a shift register \(SR\) whose bits are shifted from the most significant bit to the least significant bit:
Definition: Left Shift Register
A left shift register is a shift register \(SR\) whose bits are shifted from the least significant bit to the most significant bit:
Parallel Shift Registers#
We can construct an \(n\)-bit parallel shift register using an \(n\)-bit parallel register \(R\) and a multiplexer.
For a right shift register, the multiplexer essentially selects between the load bus \(L[0], \dotsc, L[n-1]\) and either the bits \(R[1],\dotsc, R[n-1]\). An additional input \(b\) determines what value to assign to the most significant bit \(R[n-1]\) when shifting: