//&符号是and,与,一个为0都是0,全部为1才是1 //1&1=1,1&0=0,1与任何数都是任何数 //0&1=0,0&0=0,0与任何数都是0 var num1 = 0b_1010_1010_1010; var num2 = 0b_1111_0000; //保留num1二进制中4-7位 Console.WriteLine(Convert.ToString(num1 & num2, 2)); //0b_1010_0000 //|符号是or,或,一个为1即为1,全部为0才是0 //1|1=1,1|0=1,1或任何数都是1 //0|1=1,0|0=0,0或任何数都是任何数 num1 = 0b_1010_1010; num2 = 0b_0101; num1 <<= 4; //左移4位,变成0b_1010_1010_0000 //将num2附加到num1低位上 Console.WriteLine(Convert.ToString(num1 | num2, 2)); //0b_1010_1010_0101 //^符号是xor,异或,两者不相等为1,相等则为0 //1^1=0,1^0=1,1异或任何数都是不是任何数 //0^1=1,0^0=0,0异或任何数都是任何数 //只用它进行过异或检验 //0b_1010_1010_0000 //0b_0101 Console.WriteLine(Convert.ToString(num1 ^ num2, 2)); //0b_1010_1010_0101
标签:num1,num2,C#,数值,数都,0b,异或,任何,1010 From: https://www.cnblogs.com/luludongxu/p/17982013