Non parlerei di "evoluzione". Sono solo nati linguaggi di alto livello che semplificano il lavoro, ma evoluzione mi sembra eccessivo.Ormai i linguaggi di programmazione si sono evoluti, e l'assembly sembra ormai inutile, quindi: secondo voi a cosa serve ? e a cosa servirà per il futuro ?
L'assembly resta sempre utile in quanto è un linguaggio di basso livello. Il basso livello è utile (e a volte necessario) quando si programmano particolari software, come i driver per sistemi operativi (o sistemi operativi stessi) che spesso hanno bisogno di lavorare direttamente con l'hardware, e solo l'assembly è in grado di farlo correttamente e con precisione.
Oltre a questo l'assembly è utilizzato per reversing e tant'altro: debug di applicazioni, analisi del funzionamento di programmi (utile a chi produce antivirus ad esempio), controllo del corretto funzionamento dei software, modifica di software, studio, ecc.
Inoltre è il linguaggio che può dare le massime prestazioni.
Per il resto, solitamente, "abbassarsi" fino al C è sufficiente.
I debugger, i disassembler, i memory-scanner, ecc. "parlano" assembly. Vuoi quindi dire che anche questi tools sono inutili?
Attualmente con altri sto lavorando ad un progetto, di cui è meglio che non parlo in pubblico, e nell'assembly ci sto affogando
Resta utile, almeno finché non verrà rimpiazzato da un altro lang di basso livello (o si vedrà inutile la programmazione di basso livello), per molte cose. è giusto studiarlo (ad un programmatore praticamente serve necessariamente nella vita, per non parlare di quello che si apprende sia studiandolo sia usandolo per studiare altro software) ed utilizzarlo quando serve