When I took CS300 at Purdue, they taught assembler (Now it is mostly C).
They used a nifty assembler called m32, which is short for Macro 32. It
supports macros and all sorts of neat stuff. It ran under BSD4.1, but I think
it should be possible to run it under 4.3 without any problems.
If there is any interest, send me Email. I will talk to my old professor
and get the the source IF I can. I am not sure it is available.