We are considering integrating our processors design and architecture course with our assembly programming course by using the same processor for both. The processor class (which does its work in Logisim) does not have to necessarily implement the entire processor used by the assembly class. A usable subset would be fine.
The assembly class focuses on stack operations, function calls, and PC operations, so any assembly language that we move to would have to support these as well.
Currently, our assembly class uses 6502, which has 6 registers (including flags), and a very limited number of commands. This might end up being our best choice for integrating into processors, as I have not found anything simpler yet.
As far as the processor design class is concerned, 8-bit machines are about twice as good as 16-bit machines, and about 4x as good as 32-bit machines, and I'd like to keep the number of registers down to a manageable number. 6502's 6 registers is pretty reasonable.
The only assembly language for beginners that I have found is ACSL assembly, but it lacks a memory bus entirely (so no stack). Are there other languages that I am overlooking?