42 lines
2.3 KiB
Plaintext
42 lines
2.3 KiB
Plaintext
#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
|