Hay como mínimo un lenguaje ensamblador por cada microprocesador distinto.
Si bien, dado que los procesadores forman 'familias' es habitual que un mismo lenguaje cubra varios procesadores.
Si se compila para 'cualquier procesador (de la familia)', se ve obligado a usar el conjunto de intrucciones comunes a todos los procesadores de la familia.
Si se compila en la máquina destino, se puede optimizar usando las instrucciones específicas que tenga dicho procesador.
por ejmeplo,dime nombres de lenguajes de ensamblador.
Por ejemplo, para la familia Intel x86, tienes MASM, TASM, NASM, HLA...
Google y Wikipedia son páginas que debieras consultar antes de hacer preguntas aquí.
https://es.wikipedia.org/wiki/Categor%C3%ADa:EnsambladoresJuraría que ya preguntaste estas mismas cosas (o muy parecidas) tiempo atrás...