Where'd you find the chip? I thought they had been obsoleted.
Anyway, defining the pins like this following the names on page 2 of the datasheet:
SI = dataPin
SHCP = clockPin
STCH = latchPin
CS = chipselect
RW = connect to Gnd for write only usage
then to write data to the part:
digitalWrite (chipselect, LOW); // select the part for data transfer
digitalWrite (latchPin, LOW); // set up to move the data to the output register
shiftout (dataPin, clockPin, MSBFIRST, highByte (your_int_data) ); // shift in the data
shiftout (dataPin, clockPin, MSBFIRST, lowByte (your_int_data) );
digitalWrite (latchPin, HIGH); // move data to output register on low to high edge
digitalWrite (chipselect, HIGH); // deselect the chip
A potential problem could be that serial data is clocked in with the clockpin going from High to Low.
Would have to look at how shiftout() is written and see if it does the equivalent of this:
digitalWrite (dataPin, next_data_bit);
digitallWrite (clockbit, LOW);
digitalWrite (clockbit, HIGH);
and if so you'd be okay.
I prefer to use SPI.transfer() and use the ATMega hardware to shift stuff out faster, I think it has a mode that lets you select the data to be valid on falling clock edges, instead of rising clock edges.