c语言程序设计第12章(位运算)

c语言程序设计第12章(位运算)

ID:20421772

大小:229.50 KB

页数:19页

时间:2018-10-13

c语言程序设计第12章(位运算)_第1页
c语言程序设计第12章(位运算)_第2页
c语言程序设计第12章(位运算)_第3页
c语言程序设计第12章(位运算)_第4页
c语言程序设计第12章(位运算)_第5页
资源描述:

《c语言程序设计第12章(位运算)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第十二章位运算位运算是指进行二进制位的运算,即对字节或字节内部的二进制位进行运算。计算机中是以补码形式存放数的.正数:原码,反码,补码相同.负数的补码:符号位不变,数值位按位取反加1如:+7:-7:0000011111111001一.位运算符参加位运算数据类型:有符号和无符号的整型数(包括:char、shortint、longunsigned)位运算符共6种:&

2、^~<<>>1.~(按位取反运算符)作用:对一个二进制数逐位取反。注意:~运算和!运算的区别。~的优先级与++、--、!同级。结合性从右至左。如:a=15则~a例12.1main(){inta=0,b=1

3、;printf(“%d,%d”,~a,~b);printf(“%d,%d”,!a,!b);}运行结果:-1,-21,000000000000011111111111111110000a~a000000000000000011111111111111110~02.&(按位与运算)作用:对参加运算的两个二进制数逐位进行逻辑与运算。如:a&b规则:0&0=0,1&0=0,0&1=0,1&1=1例如:a=1,b=-2,则:a&b=0例:main(){inta=5,b=12,d;d=a&b;printf(“%d&%d=%d”,a,b,d);}输出:5&12=4

4、此例说明:a,b两个操作数参加&运算前后,其值不变。000000010000000011111110111111110000000000000000aba&b3.

5、(按位或运算)作用:对参加运算的两个二进制数逐位进行逻辑或运算。如:a

6、b规则:0

7、0=0,1

8、0=1,0

9、1=1,1

10、1=1例如:a=1,b=-1,则:a

11、b=-1.000000010000000011111111111111111111111111111111aba

12、b4.^(按位异或运算)作用:对参加运算的两个二进制数逐位进行逻辑异或运算.如:a^b规则:0^0=0,1^0=1,0^1=1,1^1

13、=0例如:a=15,b=0,则:a^b=15000011110000000000000000000000000000111100000000aba^b例:main(){inta=3,b=4;a=a^b;b=b^a;a=a^b;printf(“%d,%d”,a,b);}输出:4,3结论:利用异或运算,可以设置第三个变量就可以实现两个整型变量值的交换。000000110000000000000100000000000000011100000000aba0000001100000000b0000010000000000a5.<<(左移位运算)作用:将操作数的各个二进位顺

14、序左移。右端空出的位补0,而移出左端之外的位则舍去。如:a<

15、00按位取反取负号转换为10进制再减1得-16按位取反取负号再加1转换为10进制得-16(4)若非上述情况(如:左移出现溢出时),就不能简单地用乘2来计算.如:有符号字符型数64,当它左移2位时,结果为0。01000000640000000064<<26.>>(右移运算符)作用:将操作数的各个二进位顺序右移。左端空出的位补0或补1,而移出右端之外的位则舍去.如:a>>n表示将a的各个二进位顺序右移n位说明:右移运算的结果与操作数的符号有关1)对无符号数进行右移,左端空出的位一律补0。2)对用补码表示的有符号数,则随系统而定。“逻辑右移”空位一律补0;“算术右移”正

16、数右移,空位补0;负数右移,空位补1。(TurboC中采用算术右移)例如:a=-32768000000001000000000000000010000000000000011000000aa>>1a>>1逻辑右移,结果为16384算术右移,结果为-16384算术右移运算相当于除2运算。右移1位,相当于除2。右移n位,则除2n。二.1.位运算符的优先级结合性:~运算按从右至左,其余按从左至右例:x&~077x&(~077)x>>2&y<<3(x>>2)&(y<<3)2.复合赋值运算&=,

17、=,^=,<<=,>>=如:a&=ba=a&ba<<=m+1a=a<

18、<&^

19、~

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。