4 + 3 * 5 + y

push 4
push 3
push 5
mul
add
push y
add

begin
  x := 2 + 3 * 4;
  print x + 1
end.

push 2
push 3
push 4
mul
add
pop x
push x
push 1
add
print

begin
  x := 0;
  while x < 5 do
  begin
    print x;
    x := x + 1;
  end
end.

push 0
pop x
L0:
push x
push 5
lt
jz L1
push x
print
push x
push 1
add
pop x
jmp L0
L1:

begin
  x := (2+3)*(5+4);
  if x < 10 then
    print x
  else
    print x + 100
end.

push 2
push 3
add
push 5
push 4
add
mul
pop x
push x
push 10
lt
jz L0
push x
print
jmp L1
L0:
push x
push 100
add
print
L1:

