Android串口通信要用到的一些位运算

Android 位运算
0000 = 0  0001=1  0010=2  0011 = 3  0100 = 4  0101 = 5 0110 = 6  0111 = 7 
1、& 与运算 &为运算符
// 1、&(与运算) 与运算规则:两个数的二进制同为1,结果才为1,否则为0 同真则为真 
 System.out.println(5&3); //执行结果=1 自己按位与运算结果: 0101 & 0011 = 1 化为二进制之后同真为真
2、|(或运算) | 为运算符
//2、|(或运算)按位或运算符  加运算的两个数,按二进制位进行或运算   化为二进制后有真则为真
System.out.println(5|3); 执行结果=7 自己算这么算  //0101 | 0011 = 0111 =7  化为二进制后有真则为真
3、^(异或运算) ^ 为运算符
//3、^(异或运算) 异或运算符(^) 参加运算的两个数,按二进制位进行异或运算  有真有假 则为1 即同位值不同 则为1  同位相同则为0
 System.out.println(5^3); //执行结果6: 自己算这么算 0101 ^ 0011  =  0110 = 6
具体执行
public class App {
    public static void main(String[] args) throws Exception {
       // 0000 = 0  0001=1 0010=2  0011 = 3  0100 = 4  0101 = 5 0110 = 6  0111 = 7     1000 = 8    1001 = 9    1010 = 10      1011 = 11
        // 1、&(与运算) 与运算规则:两个数的二进制同为1,结果才为1,否则为0 同真则为真 
        System.out.println(5&3); //按位与运算     0101 & 0011 = 1 化为二进制之后同真为真
        //2、|(或运算)按位或运算符  加运算的两个数,按二进制位进行或运算 
        System.out.println(5|3);   //0101 | 0011 = 0111  化为二进制后有真则为真
        //3、^(异或运算) 异或运算符(^) 参加运算的两个数,按二进制位进行异或运算  有真有假 则为1 即同位值不同 则为1  同位相同则为0
        System.out.println(5^3); // 0101 ^ 0011  =  0110 = 6
    }
}

你可能感兴趣的:(Android,硬件对接,硬件,二进制,运算符,Android)