Re: [問題] 請問如何將實數轉成binary已回收

看板MATLAB作者 (Seifer Almasy)時間16年前 (2009/05/06 16:58), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《SeiferAlmasy (Seifer Almasy)》之銘言: : 標題: [問題] 請問如何將實數轉成binary : 時間: Mon May 4 21:59:01 2009 : : 請問我有下列數值 : : -0.4747 0.2494 0.7074 : : 要如何轉成8bits的binary形式? : 是否有內建的function或tool可用? : 還是得要自己寫一段程式將它轉出來? : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 140.120.32.117 : 推 zhewei:似乎要自己寫~ 05/04 23:00 : → zhewei:另外這個8個bits應該是不夠表達的,8bits如果為正數range 05/04 23:02 : → zhewei:在0~255,所以你只用8bits應該是會不夠表達 05/04 23:03 : → sunev:single double float 先查一查吧 05/05 04:04 : → BrianCashman:你會需要自己寫,8b含1b為符號,剩下7b,所以有效 05/05 05:31 : → BrianCashman:範圍約+/-0.9922~0.0078 可用精度約到小數第二位 05/05 05:32 感謝各位的協助, 再請教一下, 若我先將他向左移位直接將整數部分轉換成binary, 到時候要還原時再向右移位回來, 這樣寫是否會比較簡單? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.120.32.117

05/06 17:06, , 1F
這要看你怎麼定義了,以32bits的浮點數來說,第一個bit
05/06 17:06, 1F

05/06 17:08, , 2F
表正負,接下來七個bits表指數,剩下的bits儲存小數,也
05/06 17:08, 2F

05/06 17:08, , 3F
就是說,浮點數的二進位儲存是不包含任何整數部分的,小
05/06 17:08, 3F

05/06 17:09, , 4F
數點的位置由七個bits儲存的指數來表示
05/06 17:09, 4F

05/06 18:44, , 5F
感謝,我使用quantizer這個toolbox搭配num2bin即可
05/06 18:44, 5F
文章代碼(AID): #1A0L4_3N (MATLAB)
文章代碼(AID): #1A0L4_3N (MATLAB)