Essentially, it stores the value of a serial input in a place and shifts that value to the next place once a new one comes in. With an 8 bit register, I could circumvent using transistors for each column and instead send a pulse to the serial input every 8 bits that then gets shifted to the next columns.