Bit xor of two binary strings and conversion into decimal
3 次查看(过去 30 天)
显示 更早的评论
Hi, I have two large binary strings (e.g 256 bits each), then how to perform bit Xor operation and then convert the answer into decimal number.
str1='11010011110111110000110110111111';
str2='00011111001101011010001111100001';
str3=bitxor(str1,str2);
%%getting error in str3
3 个评论
采纳的回答
James Tursa
2020-6-19
编辑:James Tursa
2020-6-19
The xor part as a logical vector result
result = str1 ~= str2;
Or if you wanted it as char:
str3 = char((str1 ~= str2) + '0');
For 8-bit chunks turned into decimal numbers:
result = 2.^(7:-1:0) * reshape(str1 ~= str2,8,[]);
7 个评论
James Tursa
2020-6-20
So, can you tell me what exactly you have as inputs (size and class) and what exactly you want as an output (size and class)?
更多回答(1 个)
David Hill
2020-6-19
Use java BigInteger
import java.math.*;
a=BigInteger(str1,2);
b=BigInteger(str2,2);
c=a.xor(b);%c will be the decimal BigInteger
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!