• slider image 514
  • slider image 516
  • slider image 517
  • slider image 518
  • slider image 519
:::


Browsing this Thread:   1 Anonymous Users






Re: 請問PIC的float的整數及小數是幾位數?
#9
資深會員
資深會員


查看用戶資訊
所謂浮點數...
就是小數不是固定的...
一般說是"有效數"是幾位...

註:有效數一般是幾bit
再由幾bit(二進位)轉換成幾位(十進位)

float : 24-bit format : 1 bit 正負號 + 8 bit 指數 + 15 bit 尾數

16bit(有效數) 十進位有效數約為4.8位(不到5位數)
也就是不管怎麼表示3.1415926
基本上926(小數點不算第六位起,是表示不出來)

0.31415 = 3.1415 * 10^-1
314.15 = 3.1415 * 10^2
314150 = 3.1415 * 10^5
以上有效數都算5位
註: 以上由十進位(簡單)說明,
因為實際是二進位儲存不會剛剛好
會有一些小數值及誤差,但原理沒問題.

浮點數,就跟你說是"漂浮"不定...
而且運算又費時費力(空間)
不是通用計算,而是特定用途
例: ADC轉換
則直接使"整數"ADC直接(放大倍率)
轉成電壓,在顯示時,去點出小數點即可...

發表於: 2021/4/21 21:21
程式是
依照寫出來(的code),跑出結果
不是依照你想出來的,得到結果

先有需求規格 後有解決方案
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#8
版主
版主


查看用戶資訊
參照:

jlian wrote:
Dear Ryang :

最大的正數是 3.4028235*10^38
所以float的值可以很大就是?

謝謝.


24-bit float 應該說是值的範圍很大,但位數值因受限於實數的限制只有 15 個 bit 的值。

long 及 unsigned long 是 32-bit 資料型別,其數值最大。如貼圖所示:

Attach file:



jpg  擷取.JPG (58.42 KB)
16_607e88af01e5f.jpg 674X452 px

發表於: 2021/4/20 15:54
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#7
資深會員
資深會員


查看用戶資訊
Dear Ryang :

最大的正數是 3.4028235*10^38
所以float的值可以很大就是?

謝謝.

發表於: 2021/4/20 15:39
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#6
資深會員
資深會員


查看用戶資訊
Dear Ryang :

單精度尾數佔用 bit 22~00 的位置為23個 bit的欄位,有24 bit 的解析度。
1. 所以整數是2^(23+1) = 16777216 ?
2.小數就不知了!

謝謝?

發表於: 2021/4/20 14:27
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#5
版主
版主


查看用戶資訊
參照 XC8 使用手冊內的資料格式,24-bit float 的範圍是: 3.587324e-43 (00 00 01) ~ 3.402771E+38 (7f 7f ff)

這數值有點抽象,建議參考 MPLAB X IDE 所提供的 Watch Window 來觀察 float 變數的時計顯示值的大小。

浮點數的格式可以在: Project Properties --> 選擇XC8 Linker
選擇Memory Model 後,修改浮點數格式 (24-bit or 32-bit 格式)

發表於: 2021/4/20 11:31
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#4
資深會員
資深會員


查看用戶資訊
Dear Ryang :

float : 24-bit format : 1 bit 正負號 + 8 bit 指數 + 15 bit 尾數
那請問 8 bit 指數可以是多少位數的整數及 15 bit 尾數是多少位數的小數?
因要換成字串所以需知道各為多少位數才行.

煩請指教,謝謝.

發表於: 2021/4/20 11:00
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#3
版主
版主


查看用戶資訊
參照:

jlian wrote:
Dear All :

因要做顯示用所以須知有多少位數.

謝謝.


如果是宣告的是浮點數,其數值的大小可以在 Watch Window 觀測的。
XC8 浮點數的範圍是:
float : 24-bit format : 1 bit 正負號 + 8 bit 指數 + 15 bit 尾數
double : 32-bit format : 1 bit 正負號 + 8 bit 指數 + 23 bit 尾數

發表於: 2021/4/20 10:42
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問PIC的float的整數及小數是幾位數?
#2
版主
版主


查看用戶資訊
8 位元做浮點數的運算會耗掉很多效能的,建議在 8-Bit MCU 如能不用浮點數運算就不要用。此時可以考慮使用整數的方式運算後,在最後的結果再打上小數點做顯示。

一般我的做法是先將要運算的整數先乘以 1000 後再運算。比如兩放大後的整數相加或相乘/除後的值,轉成 ASCII Code 後傳送出去顯示時,小數點的位置你應該知道,就在送完個位數時再多傳送一個小數點出去。畢竟小數點是給人看得,電腦在做整數運算時是沒有小數點這玩意的。

發表於: 2021/4/20 10:39
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


請問PIC的float的整數及小數是幾位數?
#1
資深會員
資深會員


查看用戶資訊
Dear All :

因要做顯示用所以須知有多少位數.

謝謝.

發表於: 2021/4/20 9:37
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------