欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C语言位运算符:与、或、异或、取反、左移和右移3439.pdf

    • 资源ID:84934457       资源大小:337.59KB        全文页数:7页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言位运算符:与、或、异或、取反、左移和右移3439.pdf

    -.z.goto 语句:无条件转向;if语句:判断语句;while循环语句;do-while语句:先执行循环体,然后判断循环条件是否成立.之后继续循环;for 语句:循环,可替代 while 语句;只是用法不同;break语句跳出本层的循环;(只跳出包含此语句的循环)continue 语句:继续(一般放到循环语句里,不在执行它下面的语句,直接跳到判断语句例:for 语句,就直接跳到第二个分号处,while 语句,就直接跳到 while()的括号里;switch 语句:多相选择;return 语句:返回;C 语言位运算符:与、或、异或、取反、左移和右移 语言位运算符:与、或、异或、取反、左移和右移 位运算是指按二进制进展的运算。在系统软件中,常常需要处理二进制位的问题。C 语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号的 char,short,int 与 long 类型。C 语言提供的位运算符列表:运算符 含义 描述&按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0|按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1 按位异或 假设参加运算的两个二进制位值一样则为0,否则为1 取反 是一元运算符,用来对一个二进制数按位取反,即将0变1,将1变0 右移 将一个数的各二进制位右移 N 位,移到右端的低位被舍弃,对于无符号数,高位补0 1、“按位与运算符&按位与是指:参加运算的两个数据,按二进制位进展“与运算。如果两个相应的二进制位都为,则该位的结果值为1;否则为0。这里的1可以理解为逻辑中的 true,0可以理解为逻辑中的 false。按位与其实与逻辑上“与的运算规则一致。逻辑上的“与,要求运算数全真,结果才为真。假设,A=true,B=true,则 AB=true 例如:3&5 3的二进制编码是11(2)。为了区分十进制和其他进制,本文规定,但凡非十进制的数据均在数据后面加上括号,括号中注明其进制,二进制则标记为2内存储存数据的根本单位是字节Byte,一个字节由8个位bit)所组成。位是用以描述电脑数据量的最小单位。二进制系统中,每个0或1就是一个位。将112补足成一个字节,则是000000112。5的二进制编码是1012,将其补足成一个字节,则是000001012-.z.按位与运算:00000011(2)&00000101(2)00000001(2)由此可知3&5=1 c 语言代码:#include main()int a=3;int b=5;printf(%d,a&b);按位与的用途:1清零 假设想对一个存储单元清零,即使其全部二进制位为0,只要找一个二进制数,其中各个位符合一下条件:原来的数中为1的位,新数中相应位为0。然后使二者进展&运算,即可到达清零目的。例:原数为43,即001010112,另找一个数,设它为148,即100101002,将两者按位与运算:001010112&100101002 000000002 c 语言源代码:#include main()int a=43;-.z.int b=148;printf(%d,a&b);2取一个数中*些指定位 假设有一个整数 a(2byte),想要取其中的低字节,只需要将 a 与8个1按位与即可。a 00101100 10101100 b 00000000 11111111 c 00000000 10101100 3保存指定位:与一个数进展“按位与运算,此数在该位取1.例如:有一数84,即010101002,想把其中从左边算起的第3,4,5,7,8位保存下来,运算如下:01010100(2)&00111011(2)00010000(2)即:a=84,b=59 c=a&b=16 c 语言源代码:#include main()int a=84;int b=59;printf(%d,a&b);2、“按位或运算符|两个相应的二进制位中只要有一个为1,该位的结果值为1。借用逻辑学中或运算的话来说就是,一真为真。例如:608|178,将八进制60与八进制17进展按位或运算。-.z.00110000|00001111 00111111 c 语言源代码:#include main()int a=060;int b=017;printf(%d,a|b);应用:按位或运算常用来对一个数据的*些位定值为1。例如:如果想使一个数 a的低4位改为1,则只需要将 a 与178进展按位或运算即可。、交换两个值,不用临时变量 例如:,即112;,即1002。想将和的值互换,可以用以下赋值语句实现:ab;ba;ab;011(2)100(2)111(2)ab 的结果,a 已变成 100(2)011(2)ba 的结果,b 已变成 111(2)1002 ab 的结果,a 已变成 等效于以下两步:执行前两个赋值语句:“;和“;相当于b=b(ab)。-.z.再执行第三个赋值语句:。由于 a 的值等于,b 的值等于,因此,相当于 a=,即 a 的值等于,等于。很神奇吧!c 语言源代码:#include main()int a=3;int b=4;a=ab;b=ba;a=ab;printf(a=%d b=%d,a,b);4、“取反运算符他是一元运算符,用于求整数的二进制反码,即分别将操作数各二进制位上的1变为0,0变为1。例如:77(8)源代码:#include main()int a=077;printf(%d,a);5、左移运算符 左移运算符是用来将一个数的各二进制位左移假设干位,移动的位数由右操作数指定右操作数必须是非负-.z.值,其右边空出的位用0填补,高位左移溢出则舍弃该高位。例如:将 a 的二进制数左移2位,右边空出的位补0,左边溢出的位舍弃。假设a=15,即000011112,左移2 位得001111002。源代码:#include main()int a=15;printf(%d,a 右移运算符是用来将一个数的各二进制位右移假设干位,移动的位数由右操作数指定右操作数必须是非负 值,移到右端的低位被舍弃,对于无符号数,高位补0。对于有符号数,*些机器将对左边空出的局部 用符号位填补 即“算术移位,而另一些机器则对左边空出的局部用0填补 即“逻辑移位。注 意:对无符号数,右移时左边高位移入0;对于有符号的值,如果原来符号位为0(该数为正),则左边也是移 入0。如果符号位原来为1(即负数),则左边移入0还是1,要取决于所用的计算机系统。有的系统移入0,有的-.z.系统移入1。移入0的称为“逻辑移位,即简单移位;移入1的称为“算术移位。例:a 的值是八进制数113755:a:01101 用二进制形式表示 a1:10110(逻辑右移时)a1:10110(算术右移时)在有些系统中,a1得八进制数045766,而在另一些系统上可能得到的是145766。Turbo C 和其他一些 C 编译采用的是算术右移,即对有符号数右移时,如果符号位原来为1,左面移入高位的是1。源代码:#include main()int a=0113755;printf(%d,a1);7、位运算赋值运算符 位运算符与赋值运算符可以组成复合赋值运算符。例如:&=,|=,=,=,=例:a&=b 相当于 a=a&b a =2相当于 a=a 2

    注意事项

    本文(C语言位运算符:与、或、异或、取反、左移和右移3439.pdf)为本站会员(得**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开