91视频丝瓜-91视频完整版高清-91视频网-91视频网店-91视频网或将从此无大神-91视频网入口

您好,歡迎訪問上海現易電子元器件有限公司網站!

021-51870898
021-51870898   18019251567
4新聞資訊
您的位置: 首頁 ->  新聞資訊 -> 單片機

?AVR c語言的位操作

文章出處:單片機 責任編輯:上海現易電子元器件有限公司 發表時間:2020-11-10

位操作
一個共同的任務是編程微控制器 MCU打開或關閉IO 寄存器的一些位bit 很幸運標準C 有較好的和適用的位操作功能而沒有借助于匯編指令或其它非標準C 結構C 定義了一些按位進行的運算是很有用的
a | b – 按位或 這個表達式指示中a 被表達式中的b 按位進行或運算這慣用于打開某些位尤其常用|=的形式

例如PORTA |= 0x80; // 打開位7 (最高位)
a & b – 按位與 這個運算在檢查某些位是否置1 時有用例如
If ((PORTA & 0x81) == 0) // 檢查位7 和位0
注意圓括號需要括在&運算符的周圍因為它和= = 相比運算優先級較低這是C 程序中很多錯誤的原因之一
a ^ b – 按位異或 這個運算對一個位取反有用例如在下面的例子中位7 是被翻轉的
PORTA ^= 0x80; // 翻轉位7
~a – 按位取反. 在表達式中這個運算執行一個取反當用按位與運算關閉某些位時與這個運算組合使用尤其有用如
PORTA &= ~0x80; // 關閉位7
這個編譯器對這些運算能產生最理想的機器指令例如sbic 指令可以用在根據位的狀態進行條件分枝的按位與運算中

 

在c語言里對位的操作如一般如下:
PORTB|=(1<<2);//置PORTB的第2位=1
PORTB&=~(1<<2);//置PORTB的第2位=0
PORTB^|=(1<<2);//取反PORTB的第2位
While(PORTB&(1<<2));//判斷1
While(!(PORTB&(1<<2)));//判斷為0


上海現易電子元器件有限公司 版權所有 未經授權禁止復制或鏡像

CopyRight 2020-2025 www.urqm.cn All rights reserved   滬ICP備2020031792號

友情鏈接:

電話

易經理

18019251567

微信

易經理

易經理

頂部

咨詢
主站蜘蛛池模板: nu77亚洲综合日韩精品 | 欧美日韩在线视频不卡一区二区三区 | 天天射天天干天天色 | 一个人免费完整在线观看日本 | av在线观看 | 欧美日韩a级a| 国产激情视频在线 | 日韩三级在线播放 | jizz亚洲视频| 国产亚洲va在线电影 | 国产精品蜜臂在线观看 | 夜夜操狠狠干 | 污污在线网站 | 男女野外做爰全过程69影院 | 久久夜色精品国产尤物 | 成都影院免费高清完整版 | 国产丰满人妻一区二区三区 | 国产操操 | 精品综合久久久久久97超人 | 黑人巨茎大战白人女40CM | 日韩人妻少妇一区二区三区 | 亚洲黄业 | 久久99精品天天中文字幕 | 日本aa大片 | 日本视频a | 被几个人强的好爽小说 | 免费一级淫片aa | 免费真实播放国产乱子伦 | 任你躁| 男人女人做差羞视频 | 日韩高清专区 | 精品国产VA久久久久久久冰 | 亚洲国产成人精品久久 | 日本高清免费一本在线观看 | 日日碰狠狠躁久久躁综合网 | 中国一级黄色大片 | 免费一级a毛片 | 亚洲午夜精品久久久久 | 激情五月综合 | hh99me福利毛片在线看 | 无码观看在线电影 |