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

第12章 位运算2VIP免费

第12章  位运算2_第1页
1/30
第12章  位运算2_第2页
2/30
第12章  位运算2_第3页
3/30
第12章位运算《C程序设计》第第1212章位运算章位运算12.112.1位运算符和位运算位运算符和位运算12.212.2位段位段第12章位运算《C程序设计》12.112.1位运算符和位运算位运算符和位运算概念位运算是指按二进制位进行的运算。因为在系统软件中,常要处理二进制位的问题。例如:将一个存储单元中的各二进制位左移或右移。第12章位运算《C程序设计》12.112.1位运算符和位运算位运算符和位运算C语言提供的位运算符有:运算符含义运算符含义&按位与~取反|按位或<<左移^按位异或>>右移说明:位运算符中除"~"以外,均为双目运算符。运算量只能是整型或字符型的数据,不能为实型数据。说明:位运算符中除"~"以外,均为双目运算符。运算量只能是整型或字符型的数据,不能为实型数据。第12章位运算《C程序设计》12.1.1“12.1.1“按位与”运算符(按位与”运算符(&&))按位与:按二进制位进行“与”运算。运算规则:0&0=00&1=01&0=01&1=10&0=00&1=01&0=01&1=1第12章位运算《C程序设计》12.1.1“12.1.1“按位与”运算符(按位与”运算符(&&))例如:3&5=?00000011(3)&00000101(5)00000001(1)00000011(3)&00000101(5)00000001(1)【例【例12.112.1】】#includevoidmain(){inta=3,b=5,and;and=a&b;printf("%d\n",and);getch();}运行结果:1运行结果:1第12章位运算《C程序设计》12.1.1“12.1.1“按位与”运算符(按位与”运算符(&&))注意:如果参加&运算的是负数,则以补码形式进行“与”运算。第12章位运算《C程序设计》应用:应用:1.清零(即全部二进制位为0)方法:找一个二进制数,满足条件:原来的数中为1的位,新数中相应位为0。然后使二者进行&运算。00101011&100101000000000000101011&1001010000000000第12章位运算《C程序设计》应用:应用:2.取一个数中某些指定位方法:将这个数与1按位与即可。例如:有一个整数(2个字节),想要取其中的低字节。0010110010101100&000000001111111100000000101011000010110010101100&00000000111111110000000010101100第12章位运算《C程序设计》12.1.2“12.1.2“按位或”运算符(按位或”运算符(||))按位与:按二进制位进行“或”运算。运算规则:0|0=00|1=11|0=11|1=10|0=00|1=11|0=11|1=1第12章位运算《C程序设计》00110000(060)|00001111(017)00111111(077)00110000(060)|00001111(017)00111111(077)12.1.2“12.1.2“按位或”运算符(按位或”运算符(||))例如:060|017=?【例【例12.212.2】】#includevoidmain(){inta=060,b=017,or;or=a|b;printf("%o\n",or);}运行结果:77运行结果:77第12章位运算《C程序设计》应用:应用:1.常用来对一个数据的某些位定值为1。例如:想使一个数的低4位改为1,只需将这个数与017进行“按位或”运算即可。00110000(060)|00001111(017)00111111(077)00110000(060)|00001111(017)00111111(077)第12章位运算《C程序设计》12.1.3“12.1.3“异或”运算符(异或”运算符(^^))“异或”判断两个相应的位值是否为“异”(不同),为“异”就取真(1);否则,为假(0)。运算规则:0^0=00^1=11^0=11^1=00^0=00^1=11^0=11^1=0第12章位运算《C程序设计》12.1.3“12.1.3“异或”运算符(异或”运算符(^^))例如:071^052=?00110000(071)^00001111(052)00111111(023)00110000(071)^00001111(052)00111111(023)【例【例12.312.3】】#includevoidmain(){inta=071,b=052,xor;xor=a^b;printf("%o\n",xor);}运行结果:23运行结果:23第12章位运算《C程序设计》应用:应用:1.使特定位翻转要使哪几位翻转就将相应位与1进行“^运算”。例如:设有01111010,想使其低4位翻转。01111010^000011110111010101111010^0000111101110101第12章位运算《C程序设计》应用:应用:2.与0相^,保留原值因为原数中的1与0进行^运算得1,0^0得0,故保留原数。例如:012^00=01200001010(012)^00000000(00)00001010(012)00001010(012)^00000000(00)00001010(012)第12章位运算《C程序设计》应用:应用:3.交换两个值,不用临时...

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

碎片内容

第12章 位运算2

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部