Please disregard my last email message. It could do more harm than good :-)
It was just pointed out to me that one of the examples used to help you understand
the assignment uses a hex immediate value as a source operand for ADD. I think that
the use of a hex immediate value in this situation is very counterintuitive, and wish
I had caught it before we gave you the assignment. However, since I did not catch it
early, and I do not want to provide you with an inconsistent specification on the last
day of the assignment, please disregard my email response to the student about this
question last night (Saturday).
The specific question he asked: what to do about a negative shift amount, for
example LSHF R0,R1,#-5 is spelled out pretty unambiguously in clarification #4.
Once the programming assignment is done and turned in, we can revisit the issue of
what makes sense for the Assembly Language to allow for representations for literal
values in the various assembly language instructions.
If there is any ambiguity still remaining, please check with me or one of the TAs.
Good luck finishing the assignment Sunday night. See you in class on Monday.