為什麼這篇十進位轉二進位小數鄉民發文收入到精華區:因為在十進位轉二進位小數這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者LPH66 (1597463007)看板Math標題Re: [其他] 如何快速取小數的二進位時間...
十進位轉二進位小數 在 Amor Instagram 的最佳貼文
2020-06-18 12:34:22
🐢🤿🇮🇩 第八天。 8的筆劃是1畫, 8是7與9之間的自然數。 從形象上看, 8由上下兩個圓環組成。 如果將它順時針旋轉90度 就是數學中的「無窮大」符號。 數字8的能量很強, 2個圓環代表了圓滿、 勇氣和永恆。 8有著諸多的意思: “8”是“發”的諧音, 因此被譯作發財的意思;...
※ 引述《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