factorial(INT) 0 INT VAR ; CJUMP(=, ARG(0,0), CONST(0), la, lb); LABEL(la); MOVE(RET, CONST(1)); JUMP(NAME(lc)); LABEL(lb); MOVE(RET, BINOP(*, ARG(0,0), CALL(NAME(factorial), BINOP(-, ARG(0,0), CONST(1))))); LABEL(lc); end teste() 0 INT VAR INT; MOVE(VAR(0,0), CONST(5)); EXP(CALL(NAME(subteste), VAR(0,0))); MOVE(RET, VAR(0,0)); end subteste(INT) 1 INT VAR ; MOVE(VAR(0,0), BINOP(+, ARG(1,0), ARG(1,0))); MOVE(RET, CONST(0)); end