电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

第12讲 位运算VIP免费

第12讲 位运算_第1页
1/21
第12讲 位运算_第2页
2/21
第12讲 位运算_第3页
3/21
全国计算机等级考试3C课程第第1111讲位运算讲位运算25/1/3作者:张旭仟版权所有欢迎盗版2位运算符也可以与赋值符一起组成复合赋值符。如:&=、|=、^=、>>=、<<=说明:位运算符中除~以外,均为双目运算符。运算量只能是整型或字符型的数据,不能为实型数据。位运算的概念前面我们所学的各种运算,都是以字节作为基本单位进行的。所谓位运算,就是以二进制位为基本单位进行的运算C语言提供了6种位运算符:运算符含义运算符含义&与~取反|或<<左移∧异或>>右移25/1/3作者:张旭仟版权所有欢迎盗版3按位与运算:&运算规则:参加运算的两个数据,按二进制位进行“与”运算。如果两个相应的二进制位都为1,则该位的结果值为1;否则为0。即:0&0=0,0&1=0,1&0=0,1&1=1注意:参加位运算的运算量必须都是整形或字符型数据;如果参加&运算的是负数,则首先要以补码形式表示为二进制数,然后再按相应规则进行运算。注意:参加位运算的运算量必须都是整形或字符型数据;如果参加&运算的是负数,则首先要以补码形式表示为二进制数,然后再按相应规则进行运算。例:3&500000011(3)&00000101(5)00000001(1)25/1/3作者:张旭仟版权所有欢迎盗版4按位与运算:&按位与的常用功能-清零若想对一个存储单元置零,只要用一个全0的二进制数与其进行&运算,即可达到清零目的。例:若原存储单元的数为00101011,若要将其全部置为0,只需将其与二进制数00000000进行&运算即可。00101011&000000000000000025/1/3作者:张旭仟版权所有欢迎盗版5按位与运算:&按位与的常用功能-取一个数中的特定位:若只想对一个二进制数的某些位置零,其他位保持不变,只需将找一个数(对应于要置0的位全部为0,对应于要保持不变的位全部为1),然后做按位与运算即可。0010110010101100abc00000000111111110000000010101100例:有16位的二进制数0010110010101100,要求将高8位全部置0,低8位保持不变,只需将其与二进制数0000000011111111进行&运算即可。25/1/3作者:张旭仟版权所有欢迎盗版6按位与运算:&例如,要把变量a的高八位清0,保留低八位。只需作如下运算:a&255(0000000011111111)#includemain(){inta;scanf("%d",&a);printf("Befor:%d\n",a);a=a&255;printf("After:%d\n",a);}运算结果:65535Befor:65535After:255运算结果:65535Befor:65535After:25525/1/3作者:张旭仟版权所有欢迎盗版7按位或运算:|运算规则:只要对应的二个二进位有一个为1时,结果位就为1。即0|0=0,0|1=1,1|0=1,1|1=1例:060|017。00110000|000011110011111125/1/3作者:张旭仟版权所有欢迎盗版8按位或运算:|按位或的用途:按位或运算常用来对一个数据的某些位定值为1。例如:如果想使一个数a的低4位改为1,只需将a与017(1111)进行按位或运算即可。例:a是一个短整形数据(16位),有表达式:a|0377则将低8位全置为1,高8位原样保留。说明:其中0377是8进制数,其二进制是11111111说明:其中0377是8进制数,其二进制是1111111125/1/3作者:张旭仟版权所有欢迎盗版9按位或运算:|例程#includemain(){inta=9,b=5,c;c=a|b;printf("a=%d\nb=%d\nc=%d\n",a,b,c);}运算结果:a=9b=5c=13运算结果:a=9b=5c=1325/1/3作者:张旭仟版权所有欢迎盗版10按位异或运算:^运算规则:当两对应的二进位相异时,结果为1,反之为0。即:0^0=0,0^1=1,1^0=1,1^1=0例:071^052=023(八进制数)00111001∧001010100001001125/1/3作者:张旭仟版权所有欢迎盗版11按位异或运算:^^运算符的应用^运算可以使特定位翻转。设有01111010,想使其低4位翻转,即1变为0,0变为1。可以将它与00001111进行^运算,即:01111010∧0000111101110101运算结果:低4位正好是原数低4位的翻转。可见,要使哪几位翻转就将与其进行∧运算的该几位置为1即可。运算结果:低4位正好是原数低4位的翻转。可见,要使哪几位翻转就将与其进行∧运算的该几位置为1即可。25/1/3作者:张旭仟版权所有欢迎盗版12按位异或运算:^例程#include

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

第12讲 位运算

您可能关注的文档

书海行舟+ 关注
实名认证
内容提供者

热爱教学事业,对互联网知识分享很感兴趣

相关标签

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群