MATLAB Answers

Bit wise operation of And and XOR together

1 view (last 30 days)
Dhruv Bhatnagar
Dhruv Bhatnagar on 21 Nov 2020
Edited: Dhruv Bhatnagar on 24 Nov 2020
f10 = 1 + v2 + x2 + x2v2 + x2v3 + x3v2 + x2w2 + x2w3 + x3w2
these are the expressions and I want to perform xor and AND operation on this for 2^8 combination in binary
And if this not correct method then how can I write this expression such that it gives 1bit output as either 0 or 1 for 2^8 combination
function a=Share1(u2,v2,w2,x2,u3,v3,w3,x3)
a=bitxor(1,v2,x2,bitxor(bitand(x2,v2),bitand(x2,v3),bitand(x3,v2),bitand(x2,w2),bitand(x2,w3),bitand(x3,w2)));
end
But it is not working.
Please someone suggest how can I write this qudratic equation using MATLAB or where I am wrong

  2 Comments

dpb
dpb on 21 Nov 2020
Can you explain what the expression as written means?
Mathematically it looks like a simple sum of products of three variables [v,w,x] for two conditions.
Why then write a function with four variables [u,v,w,x] where it appears they correspond to the single/product terms and the result would just be the sum (plus the constant 1) of course?
Certainly seems no reason for bitwise operations here.
Dhruv Bhatnagar
Dhruv Bhatnagar on 22 Nov 2020
these two are the expressions and I want to perform xor and AND operation on this for 2^8 combination in binary which results in 1 bit output as either 0 or 1. And then comparing result that (number of 0 == number of 1) or not.
And if this not correct method then how can I write this expression such that it gives 1bit output as either 0 or 1 for 2^8 combination
Thank You.

Sign in to comment.

Answers (2)

Bastian Arturo Romero Mardones
The binary operation is between two values logics or values of 0's and 1's. In your code some logics operation are done between three logics values.
For example:
bitxor(bitand(x2,w2),bitand(x2,w3),bitand(x3,w2)) % bitxor(l1,l2,l3)
bitxor(bitxor(bitand(x2,w2),bitand(x2,w3)),bitand(x3,w2)) % bitxor(bitxor(l1,l2),l3)

  1 Comment

Dhruv Bhatnagar
Dhruv Bhatnagar on 22 Nov 2020
if it used for 256 inputs then how to apply

Sign in to comment.


Bruno Luong
Bruno Luong on 21 Nov 2020
Edited: Bruno Luong on 21 Nov 2020
Z=quad(0,1,1,0,1,0,1,1)
function F10 = quad(u2,v2,w2,x2,u3,v3,w3,x3)
% note: u2 and u3 not used anywhere
F10=1+v2+x2+x2*v2+x2*v3+x3*v2+x2*w2+x2*w3+x3*w2;
F10=mod(F10,2);
end

  2 Comments

Dhruv Bhatnagar
Dhruv Bhatnagar on 22 Nov 2020
It is not giving output I edit my question back if you can suggest something based on that then please
Thank You
Bruno Luong
Bruno Luong on 22 Nov 2020
"It is not giving output "
It gives 0 for me.
>> testquad
Z =
0

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!