Files
Construction-of-Compilers/Project-02-03/tramcodes/homework.tram
2025-12-11 01:09:28 +01:00

72 lines
700 B
Plaintext

GOTO L13
L14: NOP
LOAD 0 0
CONST 0
EQ
IFZERO L16
GOTO L18
L19: NOP
LOAD 0 0
LOAD 1 1
MUL
LOAD 1 0
ADD
RETURN
L18: NOP
CONST 2
LOAD 1 0
MUL
LOAD 0 0
INVOKE 2 L19 0
GOTO L17
L16: NOP
LOAD 0 0
CONST 1
ADD
L17: NOP
RETURN
L15: NOP
LOAD 1 0
CONST 0
GT
IFZERO L22
GOTO L23
L20: NOP
LOAD 1 0
CONST 0
GT
IFZERO L21
POP
L23: NOP
LOAD 0 0
LOAD 0 0
LOAD 1 0
INVOKE 2 L14 1
MUL
STORE 0 0
LOAD 0 0
POP
LOAD 1 0
CONST 1
SUB
STORE 1 0
LOAD 1 0
GOTO L20
L22: NOP
CONST None
L21: NOP
POP
LOAD 0 0
CONST 42
ADD
RETURN
L13: NOP
CONST 1
CONST 2
INVOKE 2 L14 0
POP
CONST 3
CONST 3
INVOKE 2 L15 0
HALT