两个二进制数的异或结果是什么?

a^b=|a-b|(按位相减取绝对值,再按位累加)

解答:二进制数a与b异或,即a和b两个数按位进行,如果对应位相同,即为0(这个时候相当于对应位算术相减),如果不相同,即为1(这个时候相当于对应位算术相减的绝对值)。由于二进制每个位只有两种状态,要么是0,要么是1,则按位异或操作可以表达为按位相减取绝对值,再按位累加。

举个例子:6(110)与3(011)异或为(101),按位相减为(1 0 -1)取绝对值是(101),在按位累加得5(101)。


猜你喜欢

转载自blog.csdn.net/lidanyang666/article/details/80606986