aboutsummaryrefslogtreecommitdiffstats
path: root/bench/rule110.py
diff options
context:
space:
mode:
authorBad Diode <bd@badd10de.dev>2024-07-01 20:46:28 +0200
committerBad Diode <bd@badd10de.dev>2024-07-01 20:46:28 +0200
commit64d45d31720ac08c52d51436fd7ceb1689d83f16 (patch)
treeadfe6726155b8688787a422834a76df612e7292d /bench/rule110.py
parent4ae7fab7499431d8a47878ad789a3aa4e9a3cc28 (diff)
downloadbdl-64d45d31720ac08c52d51436fd7ceb1689d83f16.tar.gz
bdl-64d45d31720ac08c52d51436fd7ceb1689d83f16.zip
Add rule110 example/benchmark
Diffstat (limited to 'bench/rule110.py')
-rw-r--r--bench/rule110.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/bench/rule110.py b/bench/rule110.py
new file mode 100644
index 0000000..42062ca
--- /dev/null
+++ b/bench/rule110.py
@@ -0,0 +1,25 @@
1line = 0b00000000000000000000000000000001
2max_iter = 30000
3
4for iter in range(0, max_iter):
5 for i in range(0, 64):
6 val = line >> (63 - i) & 0b1
7 if val == 0b1:
8 print("▀", end=" ")
9 else:
10 print(".", end=" ")
11 print("")
12
13 next = 0
14 for j in range(0, 61):
15 val = (line >> (61 - j - 1)) & 0b111
16 if val == 0: val = 0
17 elif val == 1: val = 1
18 elif val == 2: val = 1
19 elif val == 3: val = 1
20 elif val == 4: val = 0
21 elif val == 5: val = 1
22 elif val == 6: val = 1
23 elif val == 7: val = 0
24 next = next | (val << (61 - j))
25 line = next | 1