Registers are formed from a group of flip-flops arranged to hold and manipulate a data word using some common circuitry. We will consider data registers, shift registers, counters and divide-by-N counters.