Go to the library and borrow a copy of Horwitz and Hill 'The art of electronics'. It'll take you through the basics to microprocessors in an easy to read, logical manner.

As to learning programming. If you're young, start learning C, C++.

If you just want to play with simple microcontrollers like PICs etc. then, assuming you are PC/Windows literate, buy a cheap PIC starter kit (Keep an eye out for special offers; I bought a PICKit2 with demo board for less than a tenner delivered, not so long ago) or an AVR butterfly demo board and start playing :)