位運(yùn)算在計(jì)算機(jī)編程中經(jīng)常用到,所以掌握十進(jìn)制和二進(jìn)制間的轉(zhuǎn)換十分重要。
十進(jìn)制:由 0~9 十個(gè)數(shù)字組成
二進(jìn)制:由 0和1 兩個(gè)數(shù)字組成
1、整數(shù)轉(zhuǎn)換
十進(jìn)制轉(zhuǎn)二進(jìn)制的原理:十進(jìn)制的數(shù)除以2,直到商為0,最后反向取余數(shù)。
比如下圖中的例子,十進(jìn)制的13轉(zhuǎn)為二進(jìn)制表示,則為1101。
十進(jìn)制轉(zhuǎn)二進(jìn)制
二進(jìn)制轉(zhuǎn)十進(jìn)制的原理:二進(jìn)制數(shù)的每一位乘以2的n次方,n 從零開始,每次加一,最后累加。
下面是將二進(jìn)制的1101轉(zhuǎn)為十進(jìn)制的13。
二進(jìn)制轉(zhuǎn)十進(jìn)制
2、小數(shù)轉(zhuǎn)換
對(duì)于小數(shù),二進(jìn)制 轉(zhuǎn) 十進(jìn)制 比較簡(jiǎn)單,仍是二進(jìn)制數(shù)的每一位乘以2的n次方,小數(shù)點(diǎn)前面的 n 從零開始,每次加一;小數(shù)點(diǎn)后面的 n 從-1開始,每次減一,最后累加。
小數(shù)-二進(jìn)制轉(zhuǎn)十進(jìn)制
十進(jìn)制 轉(zhuǎn) 二進(jìn)制 相對(duì)麻煩些,用2乘十進(jìn)制小數(shù),可以得到積,將積的整數(shù)部分取出,再用2乘余下的小數(shù)部分,又得到一個(gè)積,再將積的整數(shù)部分取出,如此進(jìn)行,直到積中的小數(shù)部分為0,整數(shù)部分為1,此時(shí)1為二進(jìn)制的最后一位。
下圖是將十進(jìn)制的0.625轉(zhuǎn)換為二進(jìn)制表示的0.101。
小數(shù)-十進(jìn)制轉(zhuǎn)二進(jìn)制
不過(guò),不是所有的十進(jìn)制小數(shù)都恰好能用二進(jìn)制精確表示。比如十進(jìn)制的0.3轉(zhuǎn)化為用二進(jìn)制表示,如下圖所示。若用小數(shù)點(diǎn)后六位來(lái)表示,則只能近似為0.296875。
小數(shù)-十進(jìn)制轉(zhuǎn)二進(jìn)制
從上面的例子可以看出,二進(jìn)制小數(shù)點(diǎn)后面的位數(shù)越多,則能表示的小數(shù)點(diǎn)后面的有效數(shù)字越多。
C語(yǔ)言中浮點(diǎn)型一般分為 float 單精度型(4個(gè)字節(jié))和 double 雙精度型(8個(gè)字節(jié)),單精度浮點(diǎn)型小數(shù)點(diǎn)后面有效數(shù)字為6位,雙精度浮點(diǎn)型小數(shù)點(diǎn)后面有效數(shù)字為15位。
-
二進(jìn)制
+關(guān)注
關(guān)注
2文章
803瀏覽量
42160 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7632瀏覽量
90219
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論