Boolean Algebra Toolbox , ver. 2.2
Nessuna licenza
Boolean Algebra Toolbox is a small set of functions for easy generation of boolean nbc and gray sequences for sets of boolean variables.
[X1 X2...]=NBC(N) will generate a table of Natural Binary Code where the output is a set of bool-objects.
[X1 X2 X3]=NBC(3) yields:
» [x1 x2 x3]=nbc(3)
x1 =
0101 0101
x2 =
0011 0011
x3 =
0000 1111
and BGRAY(3) yields:
» [x1 x2 x3]=grayc(3)
x1 =
0110 0110
x2 =
0011 1100
x3 =
0000 1111
The constructor for the bool-class works as this:
» x=bool([1 inf 0 -1 0 nan])
x =
1101 01
of course, the constructor can also have a bool object as an argument.
B2H(X) is a function which converts a binary vector to hex string (length(X)=2^n is required).
The operators used are
+ : or
| : or
* : and
& : and
~ : not
' : not
/ : xor
you can use inequalities as well:
< > <= >= == ~=
some functions used by the bool class:
b2d : "bool" to decimal
b2h : "bool" to hex
display : display object
double : convert to double array
flip : flip the entire boolean object string
flip4 : flips the overall nibble position
flip4i : flips the bit positions for each nibble
flip8 : same as flip4 but for bytes
flip8i : same as flip4i but for bytes
horzcat : bit string concatenation, works with mixed objects (as [0 x1 1 nan x2])
length : length of the bit-string/bool-object
size : size of object in bits, nibbles, bytes, words, etc... depending on structure.
subsasgn : assign with indicies
subsref : pick out bits from the object string with indicies (subscripted reference).
Last but not least, the truth-table function which displays the truth-table for a boolean function with its set of variables. For instance:
» [x1 x2 x3]=nbc(3);
» func=x1'*x2+x3'/x1+x1*x2'*x3;
» btab(func,x1,x2,x3)
+-------------+----------+
| x1 x2 x3 | func(*) |
+-------------+----------+
| 0 0 0 | 1 |
| 1 0 0 | 0 |
| 0 1 0 | 1 |
| 1 1 0 | 0 |
| 0 0 1 | 0 |
| 1 0 1 | 1 |
| 0 1 1 | 1 |
| 1 1 1 | 1 |
+-------------+----------+
»
I know that there might be some strange stuff goin on with the order (little/big endian a.s.o.), which is one of the reasons I implemented the flip-functions.
Please mail me for suggestions of if you encounter any problems!
More toolboxes can be found at:
http://www.etek.chalmers.se/~e8rasmus/eng/matlab_programs.html
Cita come
Rasmus Anthin (2024). Boolean Algebra Toolbox , ver. 2.2 (https://www.mathworks.com/matlabcentral/fileexchange/2787-boolean-algebra-toolbox-ver-2-2), MATLAB Central File Exchange. Recuperato .
Compatibilità della release di MATLAB
Compatibilità della piattaforma
Windows macOS LinuxCategorie
Tag
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Scopri Live Editor
Crea script con codice, output e testo formattato in un unico documento eseguibile.
Versione | Pubblicato | Note della release | |
---|---|---|---|
1.0.0.0 | I improved the toolbox a lot since the last "base" version. I have made a BOOL class with which you can do easy boolean arithmetics and other stuff. |