欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2235|回復: 11
打印 上一主題 下一主題
收起左側

&= ~在單片機中起到什么作用

[復制鏈接]
跳轉到指定樓層
樓主
ID:1041297 發表于 2022-8-25 10:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
a &= ~0x10
請問在單片機中&=~起到什么作用?
它跟|的作用一樣嗎?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:466505 發表于 2022-8-25 12:07 | 只看該作者
算一下不就知道了,0x10取反是0xEF;a&=0xEF就是把第a的bit4置零!
回復

使用道具 舉報

板凳
ID:59202 發表于 2022-8-25 12:37 | 只看該作者
這個是c語言中常用的清零某一位的寫法,0x10轉換成二進制為00010000,~(00010000)= 11101111,
a  &  11101111 的結果就是a的4位必被清零,而其他位不會受影響。
而相類似的就是a |= 0x10, 也就是a = a | 00010000,結果就是a的4位被置1,而其他位不會受影響。這個語句就常拿來置1一個數的某一位
回復

使用道具 舉報

地板
ID:883242 發表于 2022-8-25 12:40 | 只看該作者
a=a&(~0x10)能看懂吧?看不懂回去看教科書去。
回復

使用道具 舉報

5#
ID:624769 發表于 2022-8-25 13:03 來自觸屏版 | 只看該作者
剛好是 | 的反操作,
回復

使用道具 舉報

6#
ID:546770 發表于 2022-8-25 13:23 | 只看該作者
等價于a = (a & (~0x10));
回復

使用道具 舉報

7#
ID:161164 發表于 2022-8-25 13:24 | 只看該作者
~:取反,~0x10 = ~B00010000 = B11101111 = 0xEF
&:與邏輯,A&=B, 等于 A=A&B
所以A&=~0x10 等于 A = A & 0xEF,目的是對第4位清零而不影響其它位
回復

使用道具 舉報

8#
ID:647261 發表于 2022-8-25 13:34 | 只看該作者
這和是不是在單片機中沒有關系,在其他地方也是一樣的
a&=~0x10是先按位取反,再相與賦值,相當于a=a&(~0x10)=a&11101111,結果就是把a的第4位清零
|是或運算,見1出1,顯然沒有清零的功能
回復

使用道具 舉報

9#
ID:509408 發表于 2022-8-25 14:07 | 只看該作者
等效于 a=a&(~0x01),即a=a&0xfe 目的是把bit0置0,即對某一位置0或置1 這樣寫看起來比較明朗,在一些庫函數中這種寫法比較多(如stm32),
回復

使用道具 舉報

10#
ID:1034262 發表于 2022-8-25 16:24 | 只看該作者
a &= ~0x10,就是將0x10取反變成0xef,再和a與運算,結果送a
回復

使用道具 舉報

11#
ID:1041297 發表于 2022-8-25 17:04 | 只看該作者
lkc8210 發表于 2022-8-25 13:24
~:取反,~0x10 = ~B00010000 = B11101111 = 0xEF
&:與邏輯,A&=B, 等于 A=A&B
所以A&=~0x10 等于 A = A ...

明白了,謝謝
回復

使用道具 舉報

12#
ID:1041297 發表于 2022-8-25 17:05 | 只看該作者
xxxevery 發表于 2022-8-25 12:37
這個是c語言中常用的清零某一位的寫法,0x10轉換成二進制為00010000,~(00010000)= 11101111,
a  &  11 ...

明白了,謝謝
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表