首頁>技術>

眾所周知,在電路和計算機裡是按0/1來儲存資料的,比如15對應二進位制的1111,但是小數是怎麼表示呢?

數字0.001

我們可以約定一個量程係數, 比如1000, 這樣儀表的讀數是1,則代表著1/1000=0.001

我們來看一個儀表的說明書,儀表返回資料038F 對應的是十進位制的911,量程為10,則實際值為91.1

另外還有一種IEEE754 浮點數格式,是用4個位元組表示一個32位的浮點數,我們找一個線上轉換的網址來試試. 比如3.14 對應的16進位制浮點數40 48 F5 C2

對應的C#程式碼就是下面:

//40 48 F5 C2 => 3.14            string value = "4048F5C2";//16進位制字串UInt32 x = Convert.ToUInt32(value, 16);//字串轉16進位制32位無符號整數 float fy = BitConverter.ToSingle(BitConverter.GetBytes(x), 0);//IEEE754 位元組轉換float
//3.14=>4048F5C2 var cc = BitConverter.GetBytes(fy);string HexStr= string.Empty; for (int i = 0; i < 4; i++)  {                HexStr = Convert.ToString(cc[i], 16).ToUpper() + HexStr;   }

15
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 例說嵌入式實用知識之JSON資料