In this type of register value stored in the register can be either shifted to left or right depending upon the circuit as:
PARALLEL IN PARALLEL OUT:
This type of shift registers is already discussed above.
SERIAL IN SERIAL OUT:
Right shift: Here data is shifted by one bit from left to right with every clock tick.

Left shift: Here data is shifted by one bit from right to left with every clock tick

SERIAL IN PARALLEL OUT: In this type of register we firstly load data serially in the register. For a 4-it register we’ll need 4 clock cycles to load data and then output comes out in parallel mode.

PARALLEL IN SERIAL OUT: In this type of shift registers we first input the Parallel data by using LOAD=1 and then data is shifted and data comes out serially.