




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第八章位运算,语言程序设计,1,本章主要内容,C语言既是一种高级语言,广泛应用于应用软件的开发和程序设计,同时又是一种低级语言,可以用于系统软件的开发和程序设计,如自动控制系统中的过程控制、参数检测、数据通讯等控制程序,都可以综合利用C语言中的指针操作、位运算和位段技术来实现。本章介绍位运算的基本形式和常用运算符,并简要介绍位段的概念。,2,一、位运算符和位运算,位运算概述所谓“位运算”,是指按二进制位进行运算。位运算的特点:运算按二进制逐位进行没有借位和进位。位运算量:整型(int,short,unsiged,long)/字符型(以补码/ASCII码形式存储),不可为实型。位运算符:P298表12.1printf(“Enteraandb:”);scanf(“%o,%o”,计算00010000(a)printf(“Enteraandb:”);scanf(“%o,%o”,Enteraandb:20,30a|b=30,Enteraandb:12,20a|b=32,计算00010000(a)|00011000(b)0001100000001010(a)|00010000(b)00011010,6,位运算符的使用,按位异或(二者相异方为1),【例三】以下程序的功能是将a数据的低4位取反。#includemain()unsignedchara=0 x39,b=;a=ab;printf(%xn,a);,答案:0 x0f,计算00111001(a)00001111(b)00110110,7,位运算符的使用,按位取反(各位反转),【例四】main()chara=3;intb=10;printf(“a=%d,b=%dn,a,b);,结果:a=-4,b=-11,计算a:补码:11111100原码:10000100b:补码:11110101原码:10001011,8,位运算符的使用,左移运算an将a中各位向左移n位,右端补0,高位溢出丢弃。例:a=an(可写为a=n),相当于a2n(高位未溢出时),【例五】以下程序的运行结果是。main()unsignedinta=0 x3ef,b;b=a2;printf(%x,%xn,a,b);A)3ef,fbB)3ef,fbcC)fbc,3efD)fbc,fbc,结果:B,9,位运算符的使用,左移运算,【例六】以下程序的运行结果是。main()inta=12,b;b=0 x1f5,结果:12,96,计算已知:0 x1f5为111110101且:a为1100aan将a中各位右移n位,溢出则舍弃。左端a为正数时(符号位为0),填0;a为负数时(符号位为1),填0或填1与系统有关填0(逻辑右移)填1(算术右移)TC使用算术右移,11,位运算符的使用,右移运算,【例七】以下程序的运行结果是。main()inta=9,b=-9;printf(%d,%d,a2,b2);,结果:2,-3(-9的补码:1111111111110111,右移后为1111111111111101)。,12,应用示例,从整数a最右端第m个位置开始取该位开始右面n位。算法如下:b=a(m-n+1)c=(0nc=c|b,14,二、位段,C语言允许在一个结构体中以位为单位来指定其成员所占内存长度。这种以位为单位的成员称为“位段”。,15,示例,structdatainti;/*非位段*/unsignedinta:3;/*占3位*/unsignedintb:5;/*占5位*/unsignedint:3;/*无名位段不可用*/unsignedintc:2;/*占2位*/unsignedint:0;/*到下一字节起始处*/unsignedintd:3;/*占3位*/unsignedint
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年家居棉品合作协议书
- 鲁棒的监督与半监督孪生极限学习机算法研究
- 客车给水员安全技能测试评优考核试卷含答案
- 硫回收装置操作工安全技能强化考核试卷含答案
- 进网作业电工培训考核考试题库及答案
- 轮胎翻修工发展趋势知识考核试卷含答案
- 刻瓷工安全实操测试考核试卷含答案
- 关于党的建设考试题及答案
- (水滴系列)二年级道德与法治上册 第二单元 我们的班级 5《我爱我们班》说课稿 新人教版
- 第四课 生产与生产资料所有制说课稿-2025-2026学年高中思想政治人教版必修1经济生活-人教版
- 二年级应用题大全800题二年级上册数学乘法应用题
- YY/T 1851-2022用于增材制造的医用纯钽粉末
- GB/T 5163-2006烧结金属材料(不包括硬质合金)可渗性烧结金属材料密度、含油率和开孔率的测定
- GB/T 19575-2004农产品批发市场管理技术规范
- 《管理沟通实务(第四版)》课件第一章 沟通与管理沟通
- GA 36-2014中华人民共和国机动车号牌
- 人教七年级历史上第一单元 史前时期:中国境内人类的活动测试题word版含答案
- 监理事故案例分析课件
- 我国大型基建工程材料供应的特点
- 【实验报告】教科版小学科学六年级下册实验报告
- 2021-2022人教部编版三年级语文上册第二单元 习作《写日记》教学设计
评论
0/150
提交评论