NSLog(@"%d,%d,%d,%d,%d,%d",(7 & 8),(7 & 7),(7 & 6),(7 & 5),(7 & 4),(7 & 3));//0,7,6,5,4,3
    /*
     0000 0111   0000 0111   0000 0111   0000 0111   0000 0111   0000 0111
     0000 1000   0000 0110   0000 0101   0000 0101   0000 0100   0000 0011
   -----------------------------------------------------------------------------
     0000 0000   0000 0110   0000 0101   0000 0101   0000 0100   0000 0011
     
     */
    NSLog(@"%d,%d,%d,%d,%d,%d",(7 | 8),(7 | 7),(7 | 6),(7 | 5),(7 | 4),(7 | 3));//15,7,7,7,7,7
    /*
     0000 0111   0000 0111   0000 0111   0000 0111   0000 0111   0000 0111
     0000 1000   0000 0110   0000 0101   0000 0101   0000 0100   0000 0011
   -----------------------------------------------------------------------------
     0000 1111   0000 0111   0000 0111   0000 0111   0000 0111   0000 0111
     
     */
    NSLog(@"%d,%d,%d,%d,%d,%d",(7 ^ 8),(7 ^ 7),(7 ^ 6),(7 ^ 5),(7 ^ 4),(7 ^ 3));//15,0,1,2,3,4
    /*
     0000 0111   0000 0111   0000 0111   0000 0111   0000 0111   0000 0111
     0000 1000   0000 0111   0000 0110   0000 0101   0000 0100   0000 0011
   -----------------------------------------------------------------------------
     0000 1111   0000 0000   0000 0001   0000 0010   0000 0011   0000 0100
     
     */
    NSLog(@"%d",(7 >> 8));//0
    /*
     0000 0111
   ----------------
     0000 0000
     
     */
    NSLog(@"%d",(7 << 8));//1792
    /*
     0000 0000 0000 0000 0000 0111
   ----------------------------------
     0000 0000 0000 0111 0000 0000
     256 + 256*2 + 256*4 = 256*7 = 1792
     */
    NSLog(@"%d",(~7));//-8
    /*
     0000 0111
   ----------------
     0000 1000
     
     */
运算符 & | ^ ~ >> << 讲解
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
 平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 我们先看下基础知识 用例子总结一下 为运算:左高右低 0011 << 1 ===> 0110 0110 ...
 - 一:首先区分一下 A~F的意思先A,代表十进制的10,二进制的1010。B,代表十进制的11,二进制的1011。C...
 - 算术运算符 Arithmetic operators 加号(+):在操作数值、字符、字符串时其结果各有不同; 字符...