Everyone gives away the assembly code programming compilers. There are also many free C compilers, but they are very specific to the brand of chip you use. For example, you would need a different compiler for PIC than you would need for AVR if you write in C. Actually, you would use different instructions in asm, too. The reason is that the different micros have different instruction sets and different hardware, etc. The micro manufacturers seem to cater to different parts of the world. AVR is easy to get samples in the US whereas it is hard to get free samples in some other Countries where PIC is easier to get for free. Just go their websites and ask. If you can get free samples, they will put a distributor in touch with you.