DSP can be divided into two disciplines: mathematics and implementation. The two are intertwined in that if you don't have a solid handle on the mathematics, you won't be able to effectively implement even the simplest of FIR filters.
An absolutely solid, excellent text for a beginner in DSP is the book by Richard Lyons, Understanding Digital Signal Processing. I would (and many others have) HIGHLY recommend this book. It will help you both in understanding the DSP math, but in a way that you will start to "intuit" it and if you have some basic programming skill will be able to start coding some basic algorithms.
As far as assembly listing, most of the vendor's websites should have some sample, example libraries you can download and work from. I know that TI does and I imagine that Microchip does also. If you want to code down at the assembly level, this will be a good place to start, as would the assembly language instruction reference. Each processor is going to have a unique set of opcodes and address modes geared towards DSP function. You will need to learn those.
Lastly, from personal experience, I recommend that you develop you basic (dsPIC) algorithm. Code it in C, C++, an excel sheet, or any other "high level" system or language that will let you verify that the algorithm works. Then, take it step, by step, reducing the language level, testing as you go. It is entirely possible that things are working perfectly and you get garbage results. Unfortunately, there are a also a ridiculous number of ways in which you can screw something up, and you get the same exact results. Proceeding this way will help prevent that.