一、用于两个整数的值进行交换,不用借助第三个变量。
a = 5(0101),b = 10(1010)经以下变换,可完成 值 的交换:
a=a^b; 0101 ^ 1010= 1111
b=b^a; 1010 ^ 1111 = 0101
a=a^b; 1111 ^ 0101= 1010
最后得:a = 10,b = 5。
二、奇偶校验
^a:将a中的每一位按位逐一进行异或。
例如:a=4'b0101,则b=1^0^1^0=0,由此可以得到数据a中为1的位数个数是偶数。
文章介绍了如何使用异或运算在不依赖第三个变量的情况下交换两个整数的值,以及如何通过位异或来确定一个数中1的个数是奇数还是偶数。具体步骤包括两次异或操作,实现了数值的互换。同时,提到了异或运算是奇偶校验的基础,能判断数据中1的位数的奇偶性。
一、用于两个整数的值进行交换,不用借助第三个变量。
a = 5(0101),b = 10(1010)经以下变换,可完成 值 的交换:
a=a^b; 0101 ^ 1010= 1111
b=b^a; 1010 ^ 1111 = 0101
a=a^b; 1111 ^ 0101= 1010
最后得:a = 10,b = 5。
二、奇偶校验
^a:将a中的每一位按位逐一进行异或。
例如:a=4'b0101,则b=1^0^1^0=0,由此可以得到数据a中为1的位数个数是偶数。
398
1万+

被折叠的 条评论
为什么被折叠?