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 加号(+):在操作数值、字符、字符串时其结果各有不同; 字符...