找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3592|回復: 13
打印 上一主題 下一主題
收起左側(cè)

C語言i=(0x21&0x80);有人能給解惑嗎?謝謝

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:493146 發(fā)表于 2021-1-25 20:49 來自觸屏版 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
i=(0x21&0x80);
i是取字節(jié)還是取位?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:390416 發(fā)表于 2021-1-25 23:35 | 只看該作者
這個問題 得看情況,如果變量是8位 就是字節(jié)。如果i是bit位 那就是取最高位。但是 不一定每種單片機都有可以bit
回復

使用道具 舉報

板凳
ID:282850 發(fā)表于 2021-1-26 00:42 | 只看該作者
0x21&0x80是按位與,是b 0010 0001  & 1000 000 =0,i是字節(jié),除非定義為位變量
回復

使用道具 舉報

地板
ID:880562 發(fā)表于 2021-1-26 09:16 | 只看該作者
0x21&0x80運算是按位與,即0010 0001  & 1000 000 =0000 0000,然后再看i是定義為什么類型,來決定是取字節(jié)還是位
回復

使用道具 舉報

5#
ID:752974 發(fā)表于 2021-1-26 09:53 | 只看該作者
i是字節(jié),在C51中可以取位,i要定義成位變量,i=(bit)(0x21&0x80);i中就是位了。
回復

使用道具 舉報

6#
ID:556568 發(fā)表于 2021-1-26 10:17 | 只看該作者
看你的定義 0x21是  0010 0001,0x80是1000 0000然后按位與
回復

使用道具 舉報

7#
ID:880597 發(fā)表于 2021-1-26 10:51 | 只看該作者
這個是按位與,然后看具體i的類型是字節(jié)還是位
回復

使用道具 舉報

8#
ID:407701 發(fā)表于 2021-1-26 14:53 | 只看該作者
主要看定義時i的類型
回復

使用道具 舉報

9#
ID:493146 發(fā)表于 2021-1-26 23:47 | 只看該作者
謝謝各位!受教了
回復

使用道具 舉報

10#
ID:883031 發(fā)表于 2021-2-24 10:01 | 只看該作者
基礎(chǔ)的東西
回復

使用道具 舉報

11#
ID:839835 發(fā)表于 2021-2-25 15:27 | 只看該作者
代碼附上看看,i=(0x21&0x80);i=0;都清零了
回復

使用道具 舉報

12#
ID:879537 發(fā)表于 2021-2-27 15:25 | 只看該作者
運算按位與  0x21=0b0010 0001
回復

使用道具 舉報

13#
ID:462827 發(fā)表于 2021-2-27 17:26 | 只看該作者
一般這樣的代碼,是為了檢測一個字節(jié)的最高位是0還是1的,不過,代碼要結(jié)合上下文才可以有具體的意義。
回復

使用道具 舉報

14#
ID:475247 發(fā)表于 2021-2-27 17:40 | 只看該作者
位運算而己,多看看基礎(chǔ)
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

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