Gli amici Davide B & Illez mi trovano chiaramente in accordo al 100%, sicuramente asm è teoricamente, ed in molti casi anche praticamente, più compatto e più veloce di qualsiasi 'C'.
I problemi dell' assembler sono solo 2: la curva di apprendimento ed il tempo richiesto per scrivere un applicazione relativamente complessa.
Fino a quando ci si limita a far lampeggiare led o qualche applicazione di poco più sofistica, l'asm è a portata anche del pivello, se iniziamo a parlare di filtri, calcoli matematici e trigonometrici complessi, pid.... le cose si complicano non poco e poichè nel mondo attuale il 'time to market' è importante....
Condivido quanto citato per il gcc ed anche i s.o. personali, è ciò che utilizzo da anni con deroghe al solo C18 di microchip (anche se nasconde qualche bug fra le sue pieghe).
All' amico faustog_2 invece mi permetto di suggerire di non dare consigli 'leggeri' per l 'asm ad un principiante; mi pare che tu abbia già problemi a gestire una semplice seriale in asm su PIC16.