Files
Construction-of-Compilers/Project-02-03/tramcodes/homework.tram
Jan-Niclas Loosen 99210f6e0d finish refactoring
2025-12-11 01:19:53 +01:00

72 lines
681 B
Plaintext

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 L10
GOTO L11
L8: NOP
LOAD 1 0
CONST 0
GT
IFZERO L9
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
L10: NOP
CONST None
L9: 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