#ip 4 0 1 2 3 4 5 6 a b c d ip f g = 0 int a = 0; 0 addi 4 16 4 ip += 16 goto L1 int f = 10551264; 1 seti 1 1 1 b = 1 L8: b = 1 for (int b = 1; b <= f; b++) { 2 seti 1 7 3 d = 1 L7: d = 1 for (int d = 1; d <= f; d++) { 3 mulr 1 3 2 c = b * d L5: c = b * d 4 eqrr 2 5 2 c = c == f if (b * d == f) if (b * d == f) 5 addr 2 4 4 ip = ip + c then goto L2 6 addi 4 1 4 ip += 1 else goto L3 7 addr 1 0 0 a += b L2: a += b a += b; 8 addi 3 1 3 d += 1 L3: d++ 9 gtrr 3 5 2 c = d > f if (d > f) 10 addr 4 2 4 ip += c then goto L4 11 seti 2 3 4 ip = 2 else goto L5 } 12 addi 1 1 1 b += 1 L4: b++ 13 gtrr 1 5 2 c = b > f if (b > f) 14 addr 2 4 4 ip += c then goto L6 15 seti 1 6 4 ip = 1 else goto L7 } 16 mulr 4 4 4 ip *= ip L6: return return a; 17 addi 5 2 5 f += 2 L1: f = 2 18 mulr 5 5 5 f *= f f = 2^2 19 mulr 4 5 5 f *= ip f = 2^2 * 19 20 muli 5 11 5 f *= 11 f = 2^2 * 19 * 11 = 836 21 addi 2 1 2 c += 1 c = 1 22 mulr 2 4 2 c *= ip c = 1 * 22 23 addi 2 6 2 c += 6 c = 1 * 22 + 6 24 addr 5 2 5 f += c f = 836 + 1 * 22 + 6 = 864 25 addr 4 0 4 ip += a if (a == 1) then goto L9 26 seti 0 0 4 ip = 0 else goto L8 27 setr 4 5 2 c = ip L9: c = 27 28 mulr 2 4 2 c *= ip c = 27*28 29 addr 4 2 2 c += ip c = 27*28 + 29 30 mulr 4 2 2 c *= ip c = (27*28 + 29) * 30 31 muli 2 14 2 c *= 14 c = (27*28 + 29) * 30 * 14 32 mulr 2 4 2 c *= ip c = (27*28 + 29) * 30 * 14 * 32 33 addr 5 2 5 f += c f = 864 + 10550400 = 10551264 34 seti 0 5 0 a = 0 a = 0 35 seti 0 2 4 ip = 0 goto L8