1樓:要當技術宅
需要準備的工具:紙,筆。
1、首先十進位制的小數轉換為二進位制,主要是小數部分乘以2,取整數部分依次從左往右放在小數點後,直至小數點後為0。例如十進位制的0.125,要轉換為二進位制的小數。
2、轉換為二進位制,將小數部分0.125乘以2,得0.25,然後取整數部分0。
3、再將小數部分0.25乘以2,得0.5,然後取整數部分0。
4、再將小數部分0.5乘以2,得1,然後取整數部分1。
5、最後則得到的二進位制的結果就是0.001。
2樓:霜寒冰聽殘荷
^一個十進位制數:abc.def = a*10^2 + b*10^1 + c*10^0 + d*10^-1 + e*10^-2 + f*10^-3
一個二進位制數:abc.def = a*2^2 + b*2^1 + c*2^0 + d*2^-1 + e*2^-2 + f*2^-3
這是不同進位制的數值表示的根本。
例如:二進位制數1101.01轉化成十進位制
1101.01(2)=1*20+0*21+1*22+1*23 +0*2-1+1*2-2=1+0+4+8+0+0.25=13.25
所以總結起來通用公式為:
abcd.efg(2)=d*20+c*21+b*22+a*23+e*2-1+f*2-2+g*2-3
十進位制整數轉換為二進位制整數:採用"除2取餘,逆序排列"法。
具體做法是:用2整除十進位制整數,可以得到一個商和餘數;再用2去除商,又會得到一個商和餘數,如此進行,直到商為0時為止,然後把先得到的餘數作為二進位制數的低位有效位,後得到的餘數作為二進位制數的高位有效位,依次排列起來。
十進位制小數轉換成二進位制小數:採用"乘2取整,順序排列"法。
具體做法是:用2乘十進位制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,此時0或1為二進位制的最後一位。或者達到所要求的精度為止。
然後把取出的整數部分按順序排列起來,先取的整數作為二進位制小數的高位有效位,後取的整數作為低位有效位。
3樓:百寶袋
整數部分從低位至高位1,2,4,8,16,32......
小數部分從小數點位置開始:1/2,1/4,1/8,1/16....
即:1010.1011=>8+2+1/2+1/8+1/16
(「^」代表冪)
1101.0111=>1*2^3+1*2^2+0*2^1+1*2^0+0*2^(-1)+1*2^(-2)+1*2^(-3)+1*2^(-4)
小數部分是如果小數點後第一位為1的話就加上0.5(即1/2),第二位加上0.25(1/4),第三位加上0.
125(1/8),接著就是1/16,1/32,1/64.....。無論算出多少都是正確的。你也可以後過來算,你算了十進位制數後,就拿小數部分*2,
如7/16=0.4375
0.4375*2=0.875 整數部分為0 即當前二進位制數值為:0.0
0.875*2=1.75 整數部分為1 即當前二進位制數值為:0.01 去掉1後繼續運算。
0.75*2=1.5 整數部分為1 即當前二進位制數值為:0.011 去掉1後繼續運算。
0.5*2=1.0 整數部分為1 即當前二進位制數值為:0.0111 去掉1後為0,運算結束。
0.4375的二進位制數為:0.0111
4樓:我是
含小數的二進位制轉十進位制。首先要記住公式。把數字帶入即可。
5樓:匿名使用者
你問他問題很高階,如果有二進位制轉十進位制,我覺得電腦上應該有直接轉的功能。
十進位制的小數怎麼轉換成二進位制
6樓:薔祀
可以採用乘2取整法,即將小數部分乘以2,然後取整數部分,
剩下的小數部分繼續乘以2,然後取整數部分,剩下的小數部分又乘以2,一直取到小數部分為零為止。
如果永遠不能為零,就同十進位制數的四捨五入一樣,按照要求保留多少位小數時,就根據後面一位是0還是1,取捨,如果是零,舍掉,如果是1,向入一位。換句話說就是0舍1入。讀數要從前面的整數讀到後面的整數。
下面舉例:
例1:將0.125換算為二進位制,結果為:將0.125換算為二進位制(0.001)2 。
分析:第一步,將0.125乘以2,得0.25,則整數部分為0,小數部分為0.25。
第二步, 將小數部分0.25乘以2,得0.5,則整數部分為0,小數部分為0.5。
第三步, 將小數部分0.5乘以2,得1.0,則整數部分為1,小數部分為0.0。
第四步,讀數,從第一位讀起,讀到最後一位,即為0.001。
擴充套件資料:
十進位制整數轉換為二進位制整數計算的方法:十進位制整數轉換為二進位制整數採用"除2取餘,逆序排列"法。具體做法是:
用2整除十進位制整數,可以得到一個商和餘數;再用2去除商,又會得到一個商和餘數,如此進行,直到商為小於1時為止。
然後把先得到的餘數作為二進位制數的低位有效位,後得到的餘數作為二進位制數的高位有效位,依次排列起來。
如:255=(11111111)b
255/2=127*****餘1
127/2=63*****=餘1
63/2=31*****==餘1
31/2=15*****==餘1
15/2=7*****===餘1
7/2=3*****====餘1
3/2=1*****====餘1
1/2=0*****====餘1
789=1100010101(b)
789/2=394 餘1 第10位
394/2=197 餘0 第9位
197/2=98 餘1 第8位
98/2=49 餘0 第7位
49/2=24 餘1 第6位
24/2=12 餘0 第5位
12/2=6 餘0 第4位
6/2=3 餘0 第3位
3/2=1 餘1 第2位
1/2=0 餘1 第1位
原理:眾所周知,二進位制的基數為2,十進位制化二進位制時所除的2就是它的基數。談到它的原理,就不得不說說關於位權的概念。
某進位制計數制中各位數字符號所表示的數值表示該數字符號值乘以一個與數字符號有關的常數,該常數稱為 「位權 」 。
位權的大小是以基數為底,數字符號所處的位置的序號為指數的整數次冪。十進位制數的百位、十位、個位、十分位的權分別是10的2次方、10的1次方、10的0次方,10的-1次方。二進位制數就是2的n次冪。
按權求和正是非十進位制化十進位制的方法。
下面我們開講原理,舉個十進位制整數轉換為二進位制整數的例子,假設十進位制整數a化得的二進位制數為edcba 的形式,那麼用上面的方法按權, 得:
a=a(2^0)+b(2^1)+c(2^2)+d(2^3)+e(2^4)
假設該數未轉化為二進位制,除以基數2得:
a/2=a(2^0)/2+b(2^1)/2+c(2^2)/2+d(2^3)/2+e(2^4)/2
注意:a除不開二,餘下了!其他的絕對能除開,因為他們都包含2,而a乘的是1,他本身絕對不包含因數2,只能餘下。
商得:b(2^0)+c(2^1)+d(2^2)+e(2^3),再除以基數2餘下了b,以此類推。
當這個數不能再被2除時,先餘掉的a位數在原數低,而後來的餘數數位高,所以要把所有的餘數反過來寫。正好是edcba。
7樓:匿名使用者
將小數部分乘以2,取結果的整數部分為二進位制的一位。 然後繼續取結果的小數部分乘2重複,一直到小數部分全部為0結束 (有可能遇到不停迴圈乘不盡的情況出現)
舉例:0.8125換成二進位制方法如下:
0.8125x2 = 1.625...1
0.625x2 = 1.25....1
0.25x2 = 0.5.....0
0.5x2 = 1 .....1
至此小數部分已經全為0 (1.0000..) ,所以十進位制0.8125對應二進位制的 0.1101
而乘不盡的無限迴圈二進位制小數舉個例子如十進位制的0.68, 你可以嘗試按上面的方法乘一下 :)
另外十進位制的整是用除2的方式的,想必你已經知道了。在換算時需要將整數部分用除2方式計算出,小數部分用乘2方式計算出,然後再用小數點接到一起作為二進位制的結果
8樓:知識之窗
第二種方法就是公式轉換。這種比較麻煩。轉換公式 就是採用"乘2取整,順序排列"法。
具體做法是:用2乘十進位制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數 部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。 然後把取出的整數部分按順序排列起來,先取的整數作為二進位制小數的高位有效位,後取的整數作為低位有效位。
9樓:匿名使用者
給lz兩個**吧,講的很詳細
十進位制轉二進位制小數點之後如何轉換
10樓:寶藏雲浩
十進位制轉二進位制轉換思路:
十進位制的小數轉換為二進位制,主要是小數部分乘以2,取整數部分依次從左往右放在小數點後,直至小數點後為0。
舉例:以十進位制的0.125,要轉換為二進位制的小數。
第一步:轉換為二進位制,將小數部分0.125乘以2,得0.25,然後取整數部分0
第二步:再將小數部分0.25乘以2,得0.
5,然後取整數部分0第三步:再將小數部分0.5乘以2,得1,然後取整數部分1第四步:
經過以上計算則得到的二進位制的結果就是0.001
11樓:匿名使用者
可以用權的辦法,小數點以後的權值依次是1/2 1/4 1/8 這樣的話表示 5.25 用(101.101)表示 或者參考ieee中關於浮點數的表示
12樓:匿名使用者
這個有幾種方法的!有一種是這樣的:比如0.
12就是把0.12不斷乘以2並取整數位為轉換結果位!過程:
0.42*2=0.84 因為個位為0,所以取00.
84*2=1.68 因為個位為1,所以取10.68*2=1.
36 因為個位為1,所以取1。。。。。。。最後得出0.42的二進位制約為 0.011
二進位制數如何轉換成十進位制數?
13樓:會飛的小兔子
二進位制數轉換成十進位制數的方法如下:
1、正整數轉成二進位制,除二取餘,然後倒序排列,高位補零。將正的十進位制數除以二,得到的商再除以二,依次類推知道商為零或一時為止,然後在旁邊標出各步的餘數,最後倒著寫出來,高位補零就可以。
2、42除以2得到的餘數分別為010101,然後倒著排一下,42所對應二進位制就是101010。
3、計算機內部表示數的位元組單位是定長的,如8位,16位,或32位。所以,位數不夠時,高位補零,所說,如圖3所示,42轉換成二進位制以後就是。00101010,也即規範的寫法為(42)10=(00101010)2。
4、負整數轉換成二進位制方法:先是將對應的正整數轉換成二進位制後,對二進位制取反,然後對結果再加一。還以42為例,負整數就是-42,如圖4所示為方法解釋。
最後即為:(-42)10=(11010110)2。
5、小數轉換為二進位制的方法:對小數點以後的數乘以2,取結果的整數部分(不是1就是0嘍),然後再用小數部分再乘以2,再取結果的整數部分……以此類推,直到小數部分為0或者位數已經夠了。然後把取的整數部分按先後次序排列,就構成了二進位制小數部分的序列。
6、 如果小數的整數部分有大於0的整數時該如何轉換呢?如以上整數轉換成二進位制,小數轉換成二進位制,然後加在一起。
7、整數二進位制轉換為十進位制:首先將二進位制數補齊位數,首位如果是0就代表是正整數,如果首位是1則代表是負整數。先看首位是0的正整數,補齊位數以後,將二進位制中的位數分別將下邊對應的值相乘,然後相加得到的就為十進位制,比如1010轉換為十進位制。
8、若二進位制補足位數後首位為1時,就需要先取反再換算:例如,11101011,首位為1,那麼就先取反吧:-00010100,然後算一下10100對應的十進位制為20,所以對應的十進位制為-20。
9、將有小數的二進位制轉換為十進位制時:例如0.1101轉換為十進位制的方法:
將二進位制中的四位數分別於下邊對應的值相乘後相加得到的值即為換算後的十進位制,這樣二進位制數轉換成十進位制數的問題就解決了。
二進位制轉十六進位制,十六進位制轉二進位制
十六進位制每一位代表十六,有0 f十六中選擇,而二進位制每一位只有0和1兩種選擇,如果要表示十六種選擇需要四位 1個十六進位制的數的範圍是0 15 每一個2進位制數可以表示2個數字既0和1 因此 16個數字 需要4個二進位制數來表示 2 2 2 2 16所以16進位制就可以轉換為 4個二進位制的數 ...
二進位制的小數怎樣加減二進位制小數減法
0.5 轉化成小數2進位制是 0.1 0.25 轉化成小數2進位制是 0.01 於是0.5 0.25 0.25 這裡只是為了說明正確性,實際計版算沒有必要再權轉到10進位制 0.10 0.01 0.01 說白了就是2進位制下的運算,既 逢2進1 1 1 10 1 10 11.10進位制有什麼不一樣呢...
二進位制與十進位制的轉換的公式,二進位制轉十進位制公式
計算機內部是以二進位制形式表示資料和進行運算的 計算機內的地址等訊號常用十六進位制來表示,而人們日常又習慣用十進位制來表示資料。這樣要表示一個資料就要選擇一個適當的數字符號來規定其組合規律,也就是要確定所選用的進位計數制。各種進位制都有一個基本特徵數,稱為進位制的 基數 基數表示了進位制所具有的數字...