网站大量收购独家精品文档,联系QQ:2885784924

第十二篇 位运算.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十二章 位运算 一、按位与() 运算规则 将两个运算量的每一个位进行逻辑与操作。 举例:计算 3 5 先将 3 和 5 表示为补码,再按位与: 3: 0 0 0 0 0 0 1 1 5:() 0 0 0 0 0 1 0 1 3 5: 0 0 0 0 0 0 0 1 二、按位或(|) 运算规则 将两个运算量的每一个位进行逻辑或操作。 举例:计算 3 | 5 先将 3 和 5 表示为补码,再按位或: 3: 0 0 0 0 0 0 1 1 5:(|) 0 0 0 0 0 1 0 1 3 | 5: 0 0 0 0 0 1 1 1 三、按位异或(^) 运算规则 两个操作数进行异或:若对应位相同,则结果该位为 0, 若对应位不同,则结果该位为 1。 举例:计算 071^052 071: 0 0 1 1 1 0 0 1 052:(^) 0 0 1 0 1 0 1 0 071^052 : 0 0 0 1 0 0 1 1 四、取反(~) 单目运算符:对一个二进制数按位取反。 例1:025:0000000000010101 ~025:1111111111101010 例1 按位取反 main() { unsigned char a,b; a=0x9a; b=~a; printf(a:%x\nb:%x\n,a,b); } 例4 移位--左移 main() { unsigned char a,b; a=0x1b; b=a2; printf(0x%x Lift shift 2 bit:0x%x\n,a,b); } * C语言程序设计 清华大学 郑莉 安颖莲 §12.1 位运算符和位运算 五、移位 左移运算() 左移后,低位补0,高位舍弃。 右移运算() 右移后,低位舍弃, 算术右移) 运行结果: a: 9a b: 65 §12.2 位运算举例 #includestdio.h main() { unsigned char a,b; a=0xb9; b=0x83; printf(a AND b:%x\n,ab); printf(a OR b:%x\n,a|b); printf(a NOR b:%x\n,a^b); } 例2 位逻辑运算 运行结果: a AND b:81 a OR b:bb a NOR b:3a 例3 位逻辑运算 #includestdio.h main() { unsigned int a=3,b=10; printf”%d\n,a2|b==1); } 运行结果: 12 运行结果: 0x1b Lift shift 2 bit:0x6c * * * C语言程序设计 清华大学 郑莉 安颖莲

文档评论(0)

189****6140 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档