C的异或运算的具体用法??
2个回答
展开全部
这个东西得等你深入学习后才能体会到它的妙处,现在先说一下也好:
异或:若参加运算的两个二进制位同号,则结果为0;异号则为1.即 0异或0=0,1异或0=1,1异或1=0.
应用:
1.使特定位翻转。假设有01111010,想使其低4位翻转。可以将它与00001111进行异或运算。结果为01110101
2.与0异或,保留原值。如012异或00=012.
3.交换两个值,不用临时变量。假如a=3,b=4。想将a和b的值互换,可以用以下赋值语句实现:
a=a异或b;
b=b异或a;
a=a异或b;
异或:若参加运算的两个二进制位同号,则结果为0;异号则为1.即 0异或0=0,1异或0=1,1异或1=0.
应用:
1.使特定位翻转。假设有01111010,想使其低4位翻转。可以将它与00001111进行异或运算。结果为01110101
2.与0异或,保留原值。如012异或00=012.
3.交换两个值,不用临时变量。假如a=3,b=4。想将a和b的值互换,可以用以下赋值语句实现:
a=a异或b;
b=b异或a;
a=a异或b;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询