使用 Arduino 讀取數字的特定位


每個數字都有一個特定的二進位制表示形式。例如,8 可以表示為 0b1000,15 可以表示為 0b1111,依此類推。如果您希望讀取數字的特定二進位制位,Arduino 提供了一種內建方法。

語法

bitRead(x, index)

其中,x 是您要讀取二進位制位的數字,索引 是您要讀取的二進位制位。0 對應於最低有效位(最右邊)二進位制位,依此類推。

此函式根據數字中該二進位制位的數值返回 0 或 1。

示例

以下示例將闡明此函式的使用方式 −

void setup() {
   // put your setup code here, to run once:
   Serial.begin(9600);
   Serial.println();
   int x = 8;

   Serial.println(bitRead(x,0));
   Serial.println(bitRead(x,1));
   Serial.println(bitRead(x,2));
   Serial.println(bitRead(x,3));
   Serial.println(bitRead(x,4));
   Serial.println(bitRead(x,5));
   Serial.println(bitRead(x,6));
   Serial.println(bitRead(x,7));
}

void loop() {
   // put your main code here, to run repeatedly:
}

輸出

序列埠監視器輸出如下所示 −

正如您所見,只有第 3 位的二進位制位為 1,而其他所有二進位制位為 0,這對應於 8 的二進位制表示形式:0b00001000

更新日期:2021-5-31

2K+ 次瀏覽

開啟你的職業

完成課程獲得認證

開始使用
廣告
© . All rights reserved.