|
|||||||||||
| 技術交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
關于pic單片機的浮點數(shù)格式問題? |
| 作者:likezk 欄目:單片機 |
網(wǎng)上看到資料里這樣介紹pic的浮點數(shù)格式: MICROCHIP公司所采用的浮點數(shù)格式是IEEE-754標準的變異型。32位浮點數(shù)格式為: ×××××××× S.××××××× eb BY0 ×××××××× ×××××××× BY1 BY2 其中:×表示一位二進制數(shù)0或1;eb 為指數(shù)的偏差;S為浮點數(shù)的符號位,S=0為正數(shù),S=1為負數(shù);小數(shù)點“·”在符號位S的右邊;BY0 BY1 BY2為尾數(shù)的小數(shù)部分。 并且還舉例子,例如十進制數(shù)50.265化為32位規(guī)格化浮點數(shù):A=50.265,則Z=ln50.265/ln2,P=int(Z),故P=5; X=A/2P=50.265/25=1.57078125,將0.57078125化為23位二進制小數(shù),即是BY0 BY1 BY2,在最高位添上十進制數(shù)的符號位S(因十進制數(shù)為正數(shù),故S=0);而eb=P+7FH,所以,十進制數(shù)50.265的32位規(guī)格化浮點數(shù)即為84H,49H,0FH,5CH。 而我實際寫程序驗證,就用這個50.265作為例子,得到的結(jié)果卻是 5CH,0Fh,49H,42H,指數(shù)部分是42H而不是84H,請問大蝦,這是怎么回事呢? 我用的PICC18編譯器,環(huán)境是MPLAB IDE7.00. |
| 2樓: | >>參與討論 |
| 作者: likezk 于 2005/10/25 8:19:00 發(fā)布:
怎么沒有人理我啊 |
|
| 3樓: | >>參與討論 |
| 作者: shiaf 于 2005/10/26 16:21:00 發(fā)布:
PICC18 默認的是 24 bits 的浮點數(shù) 需要改動設置才能變?yōu)?2 bits |
|
| 4樓: | >>參與討論 |
| 作者: rad.zhu 于 2005/10/26 17:27:00 發(fā)布:
你要檢查默認設置。 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |