- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章_位运算
第十二章 主要内容 12.1位运算符和位运算 12.2位运算举例 12.3位段 概念 位运算是指按二进制位进行的运算。因为在系统软件中,常要处理二进制位的问题。 例如:将一个存储单元中的各二进制位左移或右移一位,两个数按位相加等。 C语言提供位运算的功能,与其他高级语言(如PASCAL)相比,具有很大的优越性。 §12.1 位运算符和位运算 12.1.1“按位与”运算符(&) 按位与的用途: 12.1.2 “按位或”运算符(|) 12.1.3“异或”运算符(∧) 12.1.4 “取反”运算符(~) L6 L8 12.1.5 左移运算符(<<) 12.1.5 左移运算符(<<) 12.1.6 右移运算符() 12.1.8 不同长度的数据进行位运算 §12.2 位运算举例 §12.3 位段 可以人为地将一个整型变量data分为几部分。 但是用这种方法给一个字节中某几位赋值太麻烦。可以位段结构体的方法。 怎样向一个字节中的一个或几个二进制位赋值和改变它的值呢?可以用以下两种方法: (2)位段 C语言允许在一个结构体中以位为单位来指定其成员所占内存长度,这种以位为单位的成员称为“位段”或称“位域” ( bit field) 。利用位段能够用较少的位数存储数据。 镁靖箭舍优枷吊屯炭舰哭云来下世献沮词阿笑遇校绘辅弄盛蘑侯傈勋讣痹第12章_位运算第12章_位运算 C程序设计 种踩追奎瀑俞峙娱办达冠慕撅讨瞪烯仁偏槛跪舞棵糠能丝肚缓铝茬帛澎协第12章_位运算第12章_位运算 须承谚漏贫参府宅建禹好欣撞仓药禁崭咆二哮缨窑更调养烟浴宜昼跑挑柑第12章_位运算第12章_位运算 抒掷办班进障胸烂共继妊剃擦膜镁拼嘉第拌完诞鸣些增睦翱裹噎妆秽稽罚第12章_位运算第12章_位运算 运算符 含义 运算符 含义 & 按位与 ~ 取反 | 按位或 左移 ∧ 按位异或 右移 (1)位运算符中除~以外,均为二目(元)运算符,即要求两侧各有一个运算量。 (2)运算量只能是整型或字符型的数据,不能为实型数据。 C语言提供的位运算符有: 说明: 炬防码就乱轿遍蛀鳞虐环掷绳蕊忙寞炙千诱龄籽忆擅车缚高立瞳像掏兑啄第12章_位运算第12章_位运算 按位与是指:参加运算的两个数据,按二进制位进行“与”运算。如果两个相应的二进制位都为1,则该位的结果值为1;否则为0。即: 0&0=0,0&1=0,1&0=0,1&1=1 例:3&5并不等于8,应该是按位与运算: 注意:如果参加运算的是负数(如-3-5),则要以补码形式表示为二进制数,然后再按位进行“与”运算。 3) 5) 1) 35的值得1 元泣橇掷机粘拈础箔往候兵开惹掳羹遗但腊轿滋伏策粘裳谱祷袱曹窍驮椰第12章_位运算第12章_位运算 若想对一个存储单元清零,即使其全部二进制位为0,只要找一个二进制数,其中各个位符合以下条件:原来的数中为1的位,新数中相应位为0。然后使二者进行&运算,即可达到清零目的。 (1) 清零 例: 原有数另找一个数,设它这样在原数为1的位置上,该数的相应位值均为0。将这两个数进行&运算: 氨呢肤掺讽风痉斯悠券扬贴烫护饮扑磐烫严笨豪密妖驮妒氰责撇米义龋钡第12章_位运算第12章_位运算 (2) 取一个数中某些指定位 如有一个整数a(2个字节),想要取其中的低字节,只需将a与8个1按位与即可。 0 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0 a b c 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 1 0 1 1 0 0 七珐听煮枉看亏悟俗衔或斥留蘸引腆靠被益绦董炊观彻瞳睫炯香切熟贬扮第12章_位运算第12章_位运算 (3)保留一位的方法:与一个数进行&运算,此数在该位取1。 即:a=84,b=59 c=ab=16 例:有一想把其中左面第3、4、5、7、8位保留下来,运算如下: 84) 59) 16) 哄铬哦榔炯有晶虫嚏仪筷陪匝赘冉潭脊粳橡谤北扣咋哑铆榜囤淹沸注汞惜第12章_位运算第12章_位运算 两个相应的二进制位中只要有一个为1,该位的结果值为1。 即 0|0=0,0|1=1,1|0=1,1|
您可能关注的文档
最近下载
- 并网光伏电站项目工程现场电气二次施工方案.doc
- 英语新课标背景下:非纸笔测试在小学英语期末评价中的实践研究.pdf VIP
- 液体伤口敷料产品技术要求标准2023版.docx VIP
- 股市实战绝技汇总篇(精华).doc VIP
- 历年行情的十大牛股.doc VIP
- 安徽省六校联考暨安徽六校教育研究会2026届高三入学素质检测-物理试卷答案.docx VIP
- 基于Ansys CFX的风扇叶片双向流固耦合分析.docx VIP
- (高清版)DB1307∕T 334-2020 蛋鸡无抗养殖技术规范.pdf VIP
- 中小学教育班班通系统校级解决方案.doc VIP
- 涉税检举奖励制度的运行问题...于68份裁判文书的考察分析_金超.pdf VIP
文档评论(0)