第11章位运算-德州学院.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章位运算-德州学院

第11章 位运算 11.1 位运算符 11.2 位运算的应用 11.3 典型例题 第11章 位运算 位运算的定义 程序中所有的数据在内存中都是以二进制的形式存储的,位运算就是直接对内存中的二进制位进行运算。C语言提供了常用的位运算功能,虽然不如汇编语言丰富,但这使得C语言也能像汇编语言一样用来编写系统程序。 11.1 位运算符 11.1 位运算符 11.2 位运算符的运算性质及应用 一、按位与运算符 按位与运算符“”是双目运算符。 1. 运算性质 参与运算的两数对应二进制位相与,即两个二进位均为1时,结果位才为1,否则为0。 例如,表达式3和9的与运算过程如下(3、9对应的二进制分别为0000 0011和0000 1001) 位与运算符的运算性质及应用 2. 使用格式为:xy 以上例子,3和9与运算的测试程序如下: void main() { int a=3,b=9,c; c=ab; printf(a=%d,b=%d,c=%d,a,b,c); } 位与运算符的运算性质及应用 3. 与运算的主要用途 通常用来对一个数的某些位清0或保留某些位。如果某些位需要清0,则该数与一个对应的清0位为0,其余位为1的数相与;如果要保留某些位,则将该数与一个对应保留位为1,其余位为0的数相与。 例如,把短整型变量x的高8位清0,保留其低8位,可作x255运算(255的二进制数为0000000011111111)。 位或运算符的运算性质及应用 二、按位或运算符| 按位或运算符|是双目运算符。 1. 运算性质 其功能是参与运算的两数对应的二进位相或,即对应的两个二进位有一个为1时,结果位就为1,否则为0。 例如,表达式3|9的运算过程如下: 位或运算符的运算性质及应用 2. 使用格式为: x|y 3和9或运算的测试程序如下: void main() { int a=3,b=9,c; c=a|b; printf(a=%d,b=%d,c=%d,a,b,c); } 位或运算符的运算性质及应用 3. 或运算|的主要用途 通常用来对一个数中的某些位置1。即将该数与一个对应置1位为1,其余位为0的数相或。例如,若想使短整型变量x中低4位置1,其它位保持不变,可采用表达式:x = x|15(15的二进制数为0000 0000 0000 1111)。 位异或运算符的运算性质及应用 三、按位异或运算符^ 按位异或运算符^是双目运算符。 1. 运算性质 参与运算的两数对应的二进位相异或,即对应的两个二进位不同则结果为1,否则为0。 例如,表达式3和9的异或运算过程如下: 位异或运算符的运算性质及应用 2. 使用格式为:x^y 3和9异或运算的测试程序如下: void main() { int a=3,b=9,c; c=a^b; printf(a=%d,b=%d,c=%d,a,b,c); } 位异或运算符的运算性质及应用 3. 异或^的主要用途 通常用来对一个数中的某些位取反(即1变0,0变1)。即将该数与一个对应取反位为1,其余位为0的数相异或。 例如:若想使短整型变量x中低8位取反,其它位保持不变,可采用表达式:x = x|255(255的二进制数为0000 0000 1111 1111)。 四、位取反运算符~ 取反运算符“~”为单目运算符,具有右结合性。 1.运算性质:对参与运算的数对应的二进位按位取反,即二进位上的0变1,1变0。 2.使用格式为:~x 例如,表达式~9的运算如下: ~0000 0000 0000 1001 结果为: 1111 1111 1111 0110 3. ~的主要用途:通常用来对一个数按位取反(即1变0,0变1)。 五、位左移运算符 左移运算符是双目运算符 。 1.运算性质:将x左移n位,高位丢弃,低位补0。参与运算的数以补码方式出现。 2.使用 格式为:xn 例如,若想使短整型变量x左移2位,即通过x2运算把x的各二进位向左移动2位。如x=0000 0000 0000 0110(十进制6),左移2位后为0000 0000 0001 1000(十进制24)。 3. 的主要用途:左移时,每左移一位,相当于移位对象乘以2。某些情况下,可以利用左移的这一特性代

文档评论(0)

daoqqzhuan2 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档