This assignment is due in class on Thursday, 23 April or to my office assistant in RH 215 by 4:30 pm on 23 April.
Using the techniques presented in class on April 7 and
discussed in Chapter 10 of the textbook,
translate the following mathematical assignment into
LC-3 code using PUSH, POP,
OpAdd, and OpMult
functions called with the JSR instruction.
r = (a + b) * (c + d) + e
Assume that a, b, c,
d, e, and r
have all been defined with .FILL pseudo-instructions
for your program.
Your LC-3 code should be about 15 lines long and start with something like the following instructions.
LD R2,a
JSR PUSH
LD R2,b
JSR PUSH
JSR OpAdd
Assuming that x, y, and
z reside at the offsets from R5
given in the following table.
| variable | offset |
|---|---|
x |
4 |
y |
-3 |
z |
0 |
Write the four LC-3 instructions needed to execute the following code:
z = x + y