- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计教程第十章
* * 第10章 位 运 算 位运算是指对二进制位进行的运算。每个二进制位中只能存放0或1。因此,位运算就是对二进制数的运算。通常,将一个数据用二进制数表示后,最右边的二进制位称为最低位(第0位),最左边的二进制位为最高位。 图10.1 微机中整数的二进制位表示 10.1 二进制位运算 10.2 位 段 10.3 程序举例 10.1 二进制位运算 在C语言中共提供了6种位运算符,如表10.1所示。 表10.1 位运算符 意 义 | ^ ~ 按位与 按位或 按位异或 按位取反 左移 右移 ? (1)在这6种位运算符中,其中按位取反是单目运算符,只有一个运算对象,其他均为双目运算符,有两个运算对象。 (2)位运算的运算对象只能是整型(包括int,short,long和unsigned)或字符型数据,而不能是实型数据。 (3)各位运算符的优先级比较分散,与其他运算符一起,其优先级从高到低如下: 逻辑非(!)?按位取反(~)?算术运算符?左移运算符()和右移运算符()?关系运算符?按位与运算符(),按位异或运算符(^),按位或运算符(|)?与|| ?赋值运算符 1.“按位与”运算符() “按位与”的运算符为“”。其运算规则是:若两个运算对象的对应二进制位均是1,则结果的对应位是1,否则为0。 利用“按位与”运算可以实现以下功能: (1)取出数据中指定的位 (2)将数据中的指定位清零 2.“按位或”运算符(|) “按位或”的运算符为“|”。其运算规则是:若两个运算对象的对应二进制位中有一个是1,则结果的对应位是1,否则为0。 例10.2 下列C程序的功能是将整型数组中所有元素转换为不小于它的最小奇数,并显示输出。。 #include stdio.h main() { int k,a[10]={23,14,24,31,46,55,33,68,27,40}; for (k=0;k<10;k++) printf(%5d,a[k]); printf(\n); for (k=0;k<10;k++) a[k]=a[k]|0x01; for (k=0;k<10;k++) printf(%5d,a[k]); printf(\n); } 3.“按位异或”运算符(^) “按位异或”的运算符为“^” 。其运算规则是:若两个运算对象的对应二进制位不相等,则结果的对应位是1,否则为0。 “按位异或”运算具有以下几个性质: (1)使数据中的某些位取反,即将0变为1,1变为0。 (2)同一个数据进行异或运算后,其结果为0。利用异或运算的这个性质,可以将变量清零。 (3)可以实现交换两个变量的值: 4.“按位取反”运算符(~) “按位取反”的运算符为“~”。其运算规则是:将运算对象中的各二进制位值取反,即将0变为1,1变为0。 5.“左移”运算符() “左移”运算符为“”。其运算规则是:将运算对象中的每个二进制位向左移动若干位,从左边移出去的高位部分被丢弃,右边空出的低位部分补0。 6.“右移”运算符() “右移”运算符为“”。其运算规则是:将运算对象中的每个二进制位向右移动若干位,从右边移出去的低位部分被丢弃。但左边空出的高位部分是补0还是补1,要视下列具体情况而定: 若右移对象为无符号整型数,则右移后左边空出的高位部分补0。 若右移对象为一般整型数或字符型数据,当该数据的最高位为0(对于一般整型来说即为正数),则右移后左边空出的高位部分补0。当该数据的最高位为1(对于一般整型来说即为正数),则与使用的计算机系统有关,有的计算机系统将右移后左边空出的高位部分补1,称为“算术右移”;有的计算机系统将右移后左边空出的高位部分补0,称为“逻辑右移”。 10.2 位 段 在C语言中,定义位段结构类型的一般形式为 struct 位段结构类型名 { 成员表 };
您可能关注的文档
- (上课用)人教版小学二年级数学上册乘法的初步认识–课件.ppt
- (QC)运用PDCA方法确保桥梁预应力预制构件质量.ppt
- (中国的地理位置及行政区划).ppt
- (二)简历撰写和面试技巧.ppt
- (人教新课标)三年级数学课件位置及方向.ppt
- (人教新课标)二年级语文上册课件–看雪–钟.ppt
- (人教版)中考英语总复习题型训练︰词汇运用.ppt
- (人教新课标)四年级语文上册第五课古诗两首课件–.ppt
- (人民版)一轮复习课件︰必修三专题五现代中国的文化和科技.ppt
- (人音版)二年级音乐下册课件 蜗牛和黄鹂鸟.ppt
- 专题06 经济体制(我国的社会主义市场经济体制)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题11 世界多极化与经济全球化-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 专题03 经济发展与社会进步-5年(2020-2024)高考1年模拟政治真题分类汇编(浙江专用)(解析版).docx
- 专题09 文化传承与文化创新-5年(2020-2024)高考1年模拟政治真题分类汇编(北京专用)(原卷版).docx
- 5年(2020-2024)高考政治真题分类汇编专题08 社会进步(我国的个人收入分配与社会保障)(原卷版).docx
- 专题07 探索世界与把握规律-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 5年(2020-2024)高考政治真题分类汇编专题06 经济体制(我国的社会主义市场经济体制)(原卷版).docx
- 专题11 全面依法治国(治国理政的基本方式、法治中国建设、全面推进依法治国的基本要求)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题17 区域联系与区域协调发展-【好题汇编】十年(2015-2024)高考地理真题分类汇编(解析版).docx
- 专题01 中国特色社会主义-5年(2020-2024)高考1年模拟政治真题分类汇编(原卷版).docx
最近下载
- 2024年刑法知识考试题库及答案【基础+提升】.pdf VIP
- 支气管镜诊疗操作相关大出血的预防和救治专家共识.pdf
- 2022年太原理工大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案).docx VIP
- 2023年太原理工大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案).docx VIP
- PP板_MSDS.doc
- 土木工程识图9剖面图和断面图.ppt
- 2024届高三英语一轮复习:说题比赛 ---2021年新高考II卷语法填空课件.pptx VIP
- 长输管道施工组织方案.doc
- 大职赛生涯闯关参考答案.docx VIP
- AST_中央企业班组长岗位管理能力资格认证(三期模拟1030)-0019.pdf
文档评论(0)