A shift register is a serial/parallel converter. There are two common types. Serial in, Parallel out - data is clocked in on two lines (data, clock) one bit at a time. Once all bits are there, it gets passed on to the parallel outputs all at once. This is often used as an output I/O expander for a processor to save pins. One common use is driving LEDs or 7-segment displays. Parallel in, Serial out - this is the other direction. The parallel inputs get looked at all at once, and the output gets shifted out to the processor on the 2 lines one at a time. This can serve as an input I/O expander. One common use is to read switches, such as a DMX address switchpack.