驱动 writel( (readl(vGPDCON) &~(0xf<<8))|(1<<4), vGPDCON);这种置位有点不明白

驱动writel((readl(vGPDCON)&~(0xf<<8))|(1<<4),vGPDCON);这种置位有点不明白,结果是多少,&~|这三个操作都啥顺序... 驱动
writel( (readl(vGPDCON) &~(0xf<<8))|(1<<4), vGPDCON);这种置位有点不明白,结果是多少,& ~ | 这三个操作都啥顺序
展开
 我来答
g760223
2011-12-12 · TA获得超过115个赞
知道答主
回答量:21
采纳率:0%
帮助的人:34.9万
展开全部
~优先最大 再来是& 再来是|

1. 先做~
~(0xf<<8)

2. 再做&
readl(vGPDCON) & ~(0xf<<8)

3. 再做|
(readl(vGPDCON) &~(0xf<<8)) | (1<<4)

运算结果是 把vGPDCON读出来, bit8~11都改为0, bit4改为1, 然後写回
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式