BBIA is superstructure on system integer, a fast and language independent algorithm which can save Nbit integer.
The max value that can be saved with this algorithm is two, in power of two in power of max integer value, decreased by one (2^(2^N-1))-1
For 32bit integer max value is (2^(2^32-1))-1 and need 15.(9) == 16 GigaByte of RAM (2^32-1 * 4 byte) to save it
For 64bit integer max value is (2^(2^64-1))-1 and need 127.(9) == 128 ExaByte of RAM (2^64-1 * 8 byte) to save it
Don't forget to count additional integer for sign and used level save. Also need extra memory for operations. The bigger count of levels the more memory you need for this operations.
Also BBIA can be considered as canonical and shifted numeric system of integer values with additional sign save [pure, positional, with direct presentation of forms and natural weight order]
Decimal Binary Code == "8,4,2,1" (direct)
min == 0000..0 [Nbit] max == 1111..1 [Nbit] => min == 0 max == -1 (for any signed integer datatype used as level)
FREEZED
Algorithm will be written in C language syntax. Some languages don't have unsigned integer type, so was created Signed To Unsigned and Arithmetic Algorithm for BBIA
Before release, any working code can be found in Algorithm subfolder. If you try to use other realizations (languages) that will not work.
It will support any statically typed language. I will add simple port to C (unsigned ver), Java, C# and JavaScript for every release. Will be added Rust version. You are free to add other languages.
- STUAA (bitflag, shiftr, outofbounders)
- bitflag, multi bitflag
- bits fulll/empty till
- bitshift right, bitshift left
- bbia and integer sum
- bbia and integer dif
- bbia and integer multiplication
- bbia and integer division
- bbia and bbia sum, dif, multiplication, division
- from and to base of 2 in string
- sqrt, log (base, bbia)
- Algorithm Version (Clang 32 bit)
- 32bit : C# in progress
- JavaScript (NodeJS) in progress
2^30 bits and 4byte integer
2^(2^30)-1 is max value
needs 4 GigaByte of RAM to store
computer with 8 GigaBytes of RAM can easily store it
computer with 32 GigaBytes of RAM is comfortable to use arithmetic operations with it
2^29 bits and 4byte integer
2^(2^29)-1 is max value
needs 2 GigaByte of RAM to store
computer with 4 GigaBytes of RAM can easily store it
computer with 16 GigaBytes of RAM is comfortable to use arithmetic operations with it