Thus, an n-bit register has n flip-flops.
A basic register is also known as a 'latch.'
A special type of register, known as the shift register, is used to pass or transfer bits of data from one flip-flop to another.
This process of transferring data bits from one flip-flop to the next is known as 'shifting'.
|Basic Idea of Shift Register|
Shift registers are useful for transferring data in a serial manner while allowing parallel access to the data.
A shift register is simply a set of flip-flops interconnected in such a way that the input to a flip-flop is the output of the one before it.
Clocking all the flip-flops at the same time will cause the bits of data to shift or move to the right in one direction (i.e., toward the last flip-flop) .
Figure shows a simple implementation of a 4-bit shift register using D-type flip-flops.
|A Simple Shift Register Consisting of D-type Flip-flops|
In some applications there is a need to bring this back to the first flip-flop, in which case the data will just be circulated within the shift register. A shift register connected this way is known as an end-around-carry shift register, or simply 'ring counter'.
|Parallel In Serial Out Shift Register|
A more complicated version of a shift register is one that allows shifting in both directions, left or right.
It is aptly and quite descriptively referred to as the Shift-Right Shift-Left Register.
To accomplish this, a 'Mode' control line is added to the circuit. The state of this 'Mode' input determines whether the shift direction would be right or left.