嵌入式c语言中 &= ~和|=各是什么意思

例如下列语句,小弟实在不懂这两个符号的意思,望高人指点rINTPND|=BIT_UART0;rINTSUBMSK&=~BIT_SUB_RXD0;... 例如下列语句,小弟实在不懂这两个符号的意思,望高人指点
rINTPND |= BIT_UART0;
rINTSUBMSK &= ~BIT_SUB_RXD0;
展开
 我来答
silvernii
推荐于2017-09-10 · TA获得超过3638个赞
知道大有可为答主
回答量:1667
采纳率:0%
帮助的人:1611万
展开全部
&是按位与(双目运算符,需要2个操作数)
|是按位或(双目运算符)
~是按位非(单目运算符)

1&0=0, 0&1=0, 0&0=0, 1&1=1
1|0=1, 0|1=1, 0|0=0, 1|1=1
~1=0,~0=1

a|=b等价于a=a|b;
同理a&=b等价于a=a&b

所以rINTPND |=BIT_UART0;等价于rINTPND=rINTPND | BIT_UART0
rINTSUBMSK &= ~BIT_SUB_RXD0等价于rINTSUBMSK = rINTSUBMSK &(~BIT_SUB_RXD0)

按位运算就是运算的时候先将操作数换算成二进制数来进行计算
譬如3 & 5就是011 & 101=001
兔丞飞
高粉答主

推荐于2019-09-30 · 专注娱乐 专注娱乐 专注娱乐
兔丞飞
采纳数:25 获赞数:19893

向TA提问 私信TA
展开全部

&是按位与(双目运算符,需要2个操作数)

|是按位或(双目运算符)

~是按位非(单目运算符)

1&0=0, 0&1=0, 0&0=0, 1&1=1

1|0=1, 0|1=1, 0|0=0, 1|1=1

~1=0,~0=1

a|=b等价于a=a|b;

同理a&=b等价于a=a&b

所以rINTPND |=BIT_UART0;等价于rINTPND=rINTPND | BIT_UART0

rINTSUBMSK &= ~BIT_SUB_RXD0等价于rINTSUBMSK = rINTSUBMSK &(~BIT_SUB_RXD0)

按位运算就是运算的时候先将操作数换算成二进制数来进行计算

譬如3 & 5就是011 & 101=001

扩展资料

/* NAND FLASH (see S3C2410 manual chapter 6) */typedef struct {

S3C24X0_REG32   NFCONF;

S3C24X0_REG32   NFCMD;

S3C24X0_REG32   NFADDR;

S3C24X0_REG32   NFDATA;

S3C24X0_REG32   NFSTAT;

S3C24X0_REG32   NFECC;

} S3C2410_NAND;static S3C2410_NAND * s3c2410nand = (S3C2410_NAND 

*)0x4e000000;volatile unsigned char *p = (volatile unsigned char *)&s3c2410nand->NFSTAT;

参考资料:百度百科 - 嵌入式c语言

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
18773483694
推荐于2018-03-28 · TA获得超过103个赞
知道答主
回答量:82
采纳率:83%
帮助的人:9.8万
展开全部
&= ~ 是关闭的意思
|= 是打开的意思
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2021-09-26
展开全部
砂铰 不想做好人,也不想做坏人,只想做你的心上人
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2021-09-19
展开全部
众蓬 夫妻之间的吵架,就像生活中的感冒很难避免——老田
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式