问问题描述
按位与异或运算的区别,急求答案,帮忙回答下
答精选答案

1、按位或:如果两个相应的二进制位有一个为1,则该结果为1,否则为0。
2、按位异或(^):如果两个相应的二进制位值不同则为1,否则为0。
3、按位与(&):如果两个相应的二进制位都为1,则该位的结果值为1,否则为0。按位的各种运算,结合图形看起来是不是还挺简单,不过这些都是正数的操作,负数还涉及到补码。
注意事项:
1、如果两个不同长度的数据进行位运算时,系统会将二者按右端对齐,然后进行位运算。
2、以与运算为例说明如下:在C语言中long型占4个字节,int型占2个字节,如果一个long型数据与一个int型数据进行与运算,右端对齐后,左边不足的位依下面三种情况补足:
如果整型数据为正数,左边补16个0。
如果整型数据为负数,左边补16个1。
如果整形数据为无符号数,左边也补16个0。
本文来自作者[冷猫77]投稿,不代表公众科技网立场,如若转载,请注明出处:https://www.cpst.net.cn/changshijingxuan/202609/700443.html
评论列表(4条)
我是公众科技网的签约作者“冷猫77”!
希望本篇文章《按位与异或运算的区别》能对你有所帮助!
本站[公众科技网]内容主要涵盖:教育咨询,知识百科
本文概览:1、按位或:如果两个相应的二进制位有一个为1,则该结果为1,否则为0。2、按位异或(^):如果两个相应的二进制位值不同则为1,否则为0。3、按位与(&):如果两个相应的二进制位都为1,则该位的结果值为1,否则为0。按位的各种运算,结合图形看起来是不是还挺简单,不过这些都是正数的操作,负数还涉及到补码。注意事项:1、如果两个不同长度的数据进行位运算时,系统会将二者按右端对齐,然后进行位运算。2、以与运算为例说明如下:在C语言中long型占4个字节,int型占2个字节,如果一个long型数据与一个in