What you need to know to do digital electronics really depends on what you want to do. There are many different ways of doing things 'discrete logic' requires knowledge of truth tables, k-maps. This sort of thing would be using individual gates like NOT AND NOR etcto make asimple circuit. I f you are interested in using PIC's C is not a bad place to start, you can program them with C if you get the right compiler. You can also program them with asembly code which is a little harder to learn and wright programs with but will give you a better idea of what is going onin the PIC. Chips like DSP's have their own assemby language that I'm told can be difficult. I've only ever programmed one so I don't know that much about it. Tell me what sort of things you are interested in doing andthen I will try and point you in the right direction. Good luck hope you enjoy it.