SN74HC595N Seems to misread bits
You need to provide a byte (uint8_t) for the data to be shifted out. Your 11111111 is being interpreted as a decimal literal so you're getting some part of that. I would expect the number 11111111 = 0xA98AC7 to come out as 0xC7 , which does not exactly match  what you are seeing- so perhaps there is something else wrong in addition. 

Try shiftOut(dataPin, clockPin, LSBFIRST, 0xFF); for all on. 

If you prefer binary to hex, you should be able to use 0b11111111 .. that binary format is supported by GCC and thus Ardunio.