Fix precedence bugs, test on homework
This commit is contained in:
71
Project-02-03/tramcodes/homework.tram
Normal file
71
Project-02-03/tramcodes/homework.tram
Normal file
@@ -0,0 +1,71 @@
|
||||
GOTO L1
|
||||
L2: NOP
|
||||
LOAD 0 0
|
||||
CONST 0
|
||||
EQ
|
||||
IFZERO L4
|
||||
GOTO L6
|
||||
L7: NOP
|
||||
LOAD 0 0
|
||||
LOAD 1 1
|
||||
MUL
|
||||
LOAD 1 0
|
||||
ADD
|
||||
RETURN
|
||||
L6: NOP
|
||||
CONST 2
|
||||
LOAD 1 0
|
||||
MUL
|
||||
LOAD 0 0
|
||||
INVOKE 2 L7 0
|
||||
GOTO L5
|
||||
L4: NOP
|
||||
LOAD 0 0
|
||||
CONST 1
|
||||
ADD
|
||||
L5: NOP
|
||||
RETURN
|
||||
L3: NOP
|
||||
LOAD 1 0
|
||||
CONST 0
|
||||
GT
|
||||
IFZERO L9
|
||||
GOTO L11
|
||||
L8: NOP
|
||||
LOAD 1 0
|
||||
CONST 0
|
||||
GT
|
||||
IFZERO L10
|
||||
POP
|
||||
L11: NOP
|
||||
LOAD 0 0
|
||||
LOAD 0 0
|
||||
LOAD 1 0
|
||||
INVOKE 2 L2 1
|
||||
MUL
|
||||
STORE 0 0
|
||||
LOAD 0 0
|
||||
POP
|
||||
LOAD 1 0
|
||||
CONST 1
|
||||
SUB
|
||||
STORE 1 0
|
||||
LOAD 1 0
|
||||
GOTO L8
|
||||
L9: NOP
|
||||
CONST None
|
||||
L10: NOP
|
||||
POP
|
||||
LOAD 0 0
|
||||
CONST 42
|
||||
ADD
|
||||
RETURN
|
||||
L1: NOP
|
||||
CONST 1
|
||||
CONST 2
|
||||
INVOKE 2 L2 0
|
||||
POP
|
||||
CONST 3
|
||||
CONST 3
|
||||
INVOKE 2 L3 0
|
||||
HALT
|
||||
Reference in New Issue
Block a user