multiplication.nv
· 840 B · Text
Bruto
Playground
|#| start exhaustive
|#| exhaustive {
|A += 5| A, A, A, A, A
|A += 10| A += 5, A += 5
|B += 5| B, B, B, B, B
|B += 10| B += 5, B += 5
|check if B is zero, B| B is not zero, B
|check if B is zero| B is zero
|clear A, A| clear A
|clear A|
|clear B, B| clear B
|clear B|
|copy A to C, A|
C, temp, copy A to C
|copy A to C| move temp to A
|move temp to A, temp|
A, move temp to A
|move temp to A|
|decrement B, B|
|decrement B|
|#| exhaustive }
|#| end exhaustive
|multiply A and B, B is not zero|
copy A to C,
decrement B,
multiply A and B
|multiply A and B, B is zero|
clear A,
clear B
|multiply A and B|
check if B is zero,
multiply A and B
|move C to A, C| A, move C to A
|move C to A|
|A *= 10|
B += 10,
multiply A and B,
move C to A
||
A += 10,
A *= 10,
A *= 10,
A *= 10,
A *= 10
1 | |#| start exhaustive |
2 | |#| exhaustive { |
3 | |A += 5| A, A, A, A, A |
4 | |A += 10| A += 5, A += 5 |
5 | |
6 | |B += 5| B, B, B, B, B |
7 | |B += 10| B += 5, B += 5 |
8 | |
9 | |check if B is zero, B| B is not zero, B |
10 | |check if B is zero| B is zero |
11 | |
12 | |clear A, A| clear A |
13 | |clear A| |
14 | |clear B, B| clear B |
15 | |clear B| |
16 | |
17 | |copy A to C, A| |
18 | C, temp, copy A to C |
19 | |copy A to C| move temp to A |
20 | |
21 | |move temp to A, temp| |
22 | A, move temp to A |
23 | |move temp to A| |
24 | |
25 | |decrement B, B| |
26 | |decrement B| |
27 | |#| exhaustive } |
28 | |#| end exhaustive |
29 | |
30 | |multiply A and B, B is not zero| |
31 | copy A to C, |
32 | decrement B, |
33 | multiply A and B |
34 | |multiply A and B, B is zero| |
35 | clear A, |
36 | clear B |
37 | |multiply A and B| |
38 | check if B is zero, |
39 | multiply A and B |
40 | |
41 | |move C to A, C| A, move C to A |
42 | |move C to A| |
43 | |
44 | |A *= 10| |
45 | B += 10, |
46 | multiply A and B, |
47 | move C to A |
48 | |
49 | || |
50 | A += 10, |
51 | A *= 10, |
52 | A *= 10, |
53 | A *= 10, |
54 | A *= 10 |
55 |