久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

IEEE32數據傳輸格式分解

作者:張小強   來源:本站原創   點擊數:  更新時間:2014年04月01日   【字體:

   平時Modbus常用的通訊。比如傳輸某寄存器的數據 “0x3F” 裝換成十進制后是“63”。這種類型直觀、簡單。但是需要處理到正負數、浮點數時就不是很方便了,即使加標志位判斷,數據的范圍有局限性,可移植性差。在PLC,觸摸屏中它們通訊這類數據則用了另一種格式。即IEEE32數據處理格式。下邊簡單介紹一下,廢話不多說,直接說主題。(詳情百度)從名字可以看出,本數據是32位。
下邊 隨便寫個32位數跟大家一塊算   
十六進制          0x41               0xc5               0x3b              0x28
二進制         01000001       11000101       00111011      00101000
分解             sppppppp       pzzzzzzz         zzzzzzzz        zzzzzzzz
說明  :  S表示本數據的正負,0表示本數據正數,1表示本數據為負數
            P是后面位偏移,算法是把p整合為一組轉換為十進制為131,于127比較
             大4,那么待會向右位移(大幾移幾位),若小向左移位。
  在"S P"后面都省去“1.” 復原后為 1.1000101 00111011 00101000
                                       右移后為11000.101 00111011 00101000
 小數左邊算法 1*2^4+1*2^3+0*2^2+0*2^1+0*2^0=24;
小數右邊算法1*2^-1+0*2^-2+1*2^-3+0*2^-4+0*2^-5+1*2^-6…… 
                    后邊就不說了,結果是0.6678.
兩個相加是24.6678.
可以表示任意一個數據,編寫這種程序可移植性強,無局限性,比如發個整數30我們可以計算出來。              正負標志位為0,向右移動4位p的值就是127+4= 131  二進制  10000011    Z為11110000 00000000 00000000    移位整合后
    0x 41      0xf0      0x00        0x00
用KEIL編寫程序時,包含math.h內有計算冪運算函數 pow(float x,float y);程序具體怎么寫這里就不多說 。畢竟不是很容易寫,尊重下個人成果。哈哈。   

關閉窗口

相關文章

主站蜘蛛池模板: 可以在线观看av的网站 | 亚洲精品一区中文字幕乱码 | 久久毛片 | 国产一区久久 | 国产精品成人一区二区三区 | 午夜精品久久久久久久久久久久 | 在线观看欧美一区 | 国产精品一二三区 | 日韩欧美一区二区三区免费观看 | 手机在线一区二区三区 | 免费视频一区二区 | 天堂在线免费视频 | 国产精品高潮呻吟久久 | 欧美日韩不卡合集视频 | 伊人伊人 | 久久综合一区二区三区 | 欧美一区视频 | 国产视频第一页 | 久热免费在线 | 中文字幕日本一区二区 | 欧美色999 | 亚洲国产成人久久综合一区,久久久国产99 | 国产精品 欧美精品 | 日本五月婷婷 | 国产精品99久久久精品免费观看 | 国产乱码精品一区二区三区av | 久久91av| 欧美久久精品一级c片 | 一道本视频 | 国产免费观看视频 | 理论片午午伦夜理片影院 | 欧美久久天堂 | www成人免费视频 | 日日人人 | 成人免费视频网站在线看 | 天天操一操 | 成人免费xxxxx在线视频 | 性高湖久久久久久久久aaaaa | 亚洲人成网站777色婷婷 | 成人在线免费看 | 欧美日韩一区不卡 |