diff options
author | Bad Diode <bd@badd10de.dev> | 2024-07-01 20:46:28 +0200 |
---|---|---|
committer | Bad Diode <bd@badd10de.dev> | 2024-07-01 20:46:28 +0200 |
commit | 64d45d31720ac08c52d51436fd7ceb1689d83f16 (patch) | |
tree | adfe6726155b8688787a422834a76df612e7292d /bench/rule110.py | |
parent | 4ae7fab7499431d8a47878ad789a3aa4e9a3cc28 (diff) | |
download | bdl-64d45d31720ac08c52d51436fd7ceb1689d83f16.tar.gz bdl-64d45d31720ac08c52d51436fd7ceb1689d83f16.zip |
Add rule110 example/benchmark
Diffstat (limited to 'bench/rule110.py')
-rw-r--r-- | bench/rule110.py | 25 |
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 @@ | |||
1 | line = 0b00000000000000000000000000000001 | ||
2 | max_iter = 30000 | ||
3 | |||
4 | for 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 | ||