The LM324N is a QUAD Operationnal Amplifier http://www.national.com/mpf/LM/LM324.html#Overview
The LM358 is a dual Operationnal Amplifier http://www.national.com/mpf/LM/LM358.html#Overview
An Op-Amp can be used as a voltage comparator, for active filters, to be used as a oscillator...
The LM339 is a QUAD voltage comparator http://www.national.com/mpf/LM/LM339.html#Overview
The 74HC20N is a NANDGATE I think, google what this is!
So I won't google you every part :p
But if you read the datasheets of your pieces you can google what they are and get information about their application.
Just to give you an int, a shift register can use 2 pins to get you 8/16 outputs,
Gates, like OR/AND gates are... gates, which open when the right conditions are respected!
Op-Amp are amplifiers which can be used for a wide range of application, from audio to logic.
Good luck reading and googling! I wish I helped you a bit...
If you are not sure about specific use of a type of part ask and I'll try to answer you.
Take a look here: http://tronixstuff.wordpress.com/2010/10/20/tutorial-arduino-and-the-i2c-bus/
There is tutorials about shift registers, and more.