I dont consider myself an expert in assembly language programming, however:
I was taught the basics of machine code and assembler on a PDP11, this was to give an understanding of the way the hardware worked and to aid faultfinding.
I then went on to teach myself enough 8080, 6800, and Z80 to write simple test programs to exercise hardware.
From a hobby perspective I taught myself PIC assembler and have produced a few usefull devices with PICs.
So, the point is, if you understand the basic principles, the way the instructions work, the way the registers relate to the hardware, then it should be no great problem to transfer that knowledge from one processor to another.
JimB