在 Arduino 中列印二進位制值


要在 Arduino 中列印數字/字元的二進位制表示,可以在你的 Serial.print() 函式的第二個引數中新增“BIN”。示例如下所示−

示例

void setup() {
   // put your setup code here, to run once:
   Serial.begin(9600);
   Serial.println();
   Serial.println(75);
   Serial.println(75, BIN);
   Serial.println('A');
   Serial.println('A',BIN);
   Serial.println(1.912,BIN);
}
void loop() {
   // put your main code here, to run repeatedly:
   
}

以上程式碼在序列監視器中的輸出如下所示−

如你所見,這僅適用於整數和字元,而不適用於浮點數字。對於字元,將列印該字元的 ASCII 等效項的二進位制值。你可以訪問此處的 ASCII 表:https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html。對於負整數,結果有點奇怪。例如,Serial.print(-75,BIN) 會輸出 11111111111111111111111110110101,它轉換為十進位制值 4294967221,對應於 (2^32 – 75)。所以本質上,列印的值對應於整數溢位。當然,這種輸出將在使用 4 個位元組(32 位)來表示整數的板上顯示。如果你使用的是使用兩個位元組(16 位)來表示整數的板,輸出將是 (2^16 – 75)。

更新於: 23-Mar-2021

10K+ 瀏覽量

開啟你的 職業生涯

完成課程,獲得認證

開始
廣告
© . All rights reserved.