I have not violated the Honor Code in completing this test. Do as many questions as you are able. DO NOT spend an excessive amount of time on any one question since all questions count the same. You may OMIT any ONE question. You MUST indicate which question is to be omitted by circling its number and writing the word OMIT next to it.
All values are in decimal unless otherwise specified.
A programmer writes a procedure which begins by pushing registers onto the stack. Unfortunately, the programmer forgets to pop the registers off the stack near the end of the procedure. Write assembly code which will multiply the contents of the AL register by 10 using only move, add and shift instructions. The AX register intially contains 12C9. The called procedure must be declared as an external procedure in the calling procedure.