為什麼這篇2進位鄉民發文收入到精華區:因為在2進位這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者LPH66 (1597463007)看板Math標題Re: [其他] 如何快速取小數的二進位時間...
2進位 在 Lee Sunnie Instagram 的最佳貼文
2021-07-05 15:13:34
紀錄一下小姐姐學數學的日子🔓 - 居家隔離一開始的時候 幼稚園還沒開始線上課程 我就自己安排了每天的學習時間 開始教她數學 注音 國字 閱讀英文 - 後來學校開始每日的線上課程 我就減少了她的學習 只留下了鋼琴跟數學 - 學數學的步驟 我自己是這樣做的👇🏻 一開始先從最簡單的 十位數以內加減法 ...
※ 引述《wa007123456 (大笨羊)》之銘言:
: 大家好
: 小弟想請問各位有關二進位的事情
: 像是把0.375轉換成二進位
: 就變成0.011
: 但是我是用土法煉鋼的方式
: 就是把0.375*2 取整數 去整數
: 然後再乘一次2 直到0.0為止(不是所有的小數都可完美轉成二進制)
: 可是像是比較多位的小數 (ex:0.84375)
: 這樣做會浪費很多時間
: 想請問各位有沒有更好的辦法
: 感謝
要另外的方法是有, 只不過應該沒有比較快...
以你舉的 0.84375 為例
0.84375 >= 0.5 => 1, 相減得 0.34375
0.34375 >= 0.25 => 1, 相減得 0.09375
0.09375 < 0.125 => 0
0.09375 >= 0.0625 => 1, 相減得 0.03125
0.03125 >= 0.03125 => 1, 相減得 0, 到此為止
由上到下讀得轉換結果為 0.11011
中間的數字是從 1 一直折半下來的結果
也就是二進位小數第 N 位為 1 對應的十進位值
跟用乘 2 法比較:
0.84375 * 2 = 1.6875 => 1
0.6875 * 2 = 1.375 => 1
0.375 * 2 = 0.75 => 0
0.75 * 2 = 1.5 => 1
0.5 * 2 = 1 => 1, 到此為止
由上到下一樣可以讀得轉換結果為 0.11011
其實如果你是在準備考試的話
出的題目要你算個二進位小數五六位就夠多了
再說如你所說也不是隨便出個數字就能轉的完
會出成題目就是設計過的
如果還是想要有個大略概念會算多少的話
從上法的中間那一串數字可以發現
二進位小數第 N 位的十進位也會到小數第 N 位
(這其實是因為 10 有恰好一個因數 2 的關係)
所以看題目裡的小數有幾位就知道要乘 2 乘幾次了 (如果轉得完的話)
--
LPH [acronym]
= Let Program Heal us
-- New Uncyclopedian Dictionary, Minmei Publishing Co.
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.30.32
※ 文章網址: http://www.ptt.cc/bbs/Math/M.1414505675.A.423.html
※ 編輯: LPH66 (140.112.30.32), 10/28/2014 22:15:13
※ 編輯: LPH66 (140.112.30.32), 10/28/2014 22:15:25