Not all ICs are programmable, so I assume you meant micro controllers (micros or uCs). There are many different makes and types available today, but probably the two best known are the AVR series from ATMEL, and the PIC series from Microchip.
I haven’t used the AVR but I have used PICs in many applications. Microchip provide for you to write a program in ‘Assembler’ or in ‘C’ using a free editor (a very good one) with which to write a program, and compilers that change your program from Assembler or C to the ‘machine code’ that the micro requires. From there on, you need a ‘Programmer’ in order to ‘burn’ your instructions into the micro. You can either use one of the Microchip ones, or buy a suitable one quite cheaply on Ebay, as I did.
Without going into more detail and re-inventing the wheel, I would suggest you Google for ‘PIC tutorials’ that will describe the process in more detail. Some take you straight into programming without giving an overview of what a micro does, but these two look promising. http://www.pages.drexel.edu/~kws23/tuto ... orial.html http://www.mstracey.btinternet.co.uk/pi ... ogtut1.htm
When you have read through them, you will probably have more questions. If so, come back for answers.