From 105ec294d3e5f7553defd1f82a7b5b03c4e8baf8 Mon Sep 17 00:00:00 2001 From: timotheyca Date: Sat, 24 Jul 2021 16:40:16 +0300 Subject: [PATCH] b_div --- main.py | 9 ++++++--- src/binary/@.bu4 | 1 + src/binary/div.bu4 | 36 ++++++++++++++++++++++++++++++++++++ src/sys1.bu4 | 8 +++++--- 4 files changed, 48 insertions(+), 6 deletions(-) create mode 100644 src/binary/div.bu4 diff --git a/main.py b/main.py index 0e828e6..d63d00b 100644 --- a/main.py +++ b/main.py @@ -1,4 +1,5 @@ # Copyright (c) PARRRATE T&V 2021. All rights reserved. +import random from bu4.common_interface import with_common_interface from bu4.evaluation.constructs.proxy import antiproxy, eproxy @@ -53,8 +54,10 @@ with TimeSample(' full'): print(sys3) with TimeSample(' full'): sys1 = with_common_interface(synced(readfile('src/sys1'))) - sys1 = sync(sys1.call(eproxy(77))) - sys1 = sync(sys1.call(eproxy(194))) - print(sys1) + a_ = random.randrange(2 ** 64) + b_ = random.randrange(2 ** 64) + sys1 = sync(sys1.call(eproxy(a_))) + sys1 = sync(sys1.call(eproxy(b_))) + print(sys1, b_ % a_) with TimeSample(' full'): print(with_common_interface(synced(readfile('src/sys4')))) diff --git a/src/binary/@.bu4 b/src/binary/@.bu4 index 4ad2d08..6b0d4b4 100644 --- a/src/binary/@.bu4 +++ b/src/binary/@.bu4 @@ -4,3 +4,4 @@ @mul @sub @bitwise +@div diff --git a/src/binary/div.bu4 b/src/binary/div.bu4 new file mode 100644 index 0000000..033c4c9 --- /dev/null +++ b/src/binary/div.bu4 @@ -0,0 +1,36 @@ +{ + (bD) + /(b_div) + (zqN)(lbN)(hb!N) + / + /(hQ)(hR) + { /[hR]/[lbN][b!] | bR } + /(bRD)(bDR) + /(zqDR)(lbDR-unused)(hb!DR-unused) + / + / + [bR] + / + /[hQ]/[0][b!] + [pair] + / + / + [bRD] + / + /[hQ]/[1][b!] + [pair] + [zqDR] + [bDR] + /[bD]/[bR][b_sub] + + / + / + [b0] + / + [b0] + [pair] + [zqN] + [YC] +| + b_div +} \ No newline at end of file diff --git a/src/sys1.bu4 b/src/sys1.bu4 index 11db521..b1581e4 100644 --- a/src/sys1.bu4 +++ b/src/sys1.bu4 @@ -7,9 +7,11 @@ / / + / + / + /[a][n_to_bx] + [b_div] /[b][n_to_bx] - / - /[a][n_to_bx] - [xx2b] + [second] [b_to_nx] """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""