栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c语言位操作

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c语言位操作

文章目录
  • 前言
  • 一、按位与
    • 1、清零
    • 2、取某个数中指定位
  • 二、按位或
  • 三、异或


前言

在学习微控制器编程时,经常会具体到某一个位,本人在这方面缺乏了解,且每次都是零零散散的知识,现将开发过程中位操作用法记录如下。
C语言中位运算符如下:

运算符含义
&按位与
|按位或
^异或
~取反
<<左移
>>右移

一、按位与

参与运算的两个数据,按二进制位进行“与”运算,如果相应的两个二进制位都为1,则该位结果为1,否则为0.
常见用法:

1、清零

要将一个数a清零,只需找一个二进制数b,满足:a中为1的位,b中相应的位为0,然后使a&b,即可达到目的。

c a=(01001101)B

b=(10110010)B
即可(不一定用上面这个数,只要满足条件)。

2、取某个数中指定位

如有一个八位的数,要想获取其低四位,只需找一个数,满足:低四位全为1,高四位全为0。
a=(01001101)B

b=(00001111)B

二、按位或
&=~
三、异或

与1异或改变,与0异或不变

1^1=0  0^1=1
1^0=1  0^0=0
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/887271.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号