1樓:匿名使用者
123-64=59, 59-32=27, 27-16=11, 11-8=3, 3-2=1
64是2的6次,從0次開始是在第7位,所以二進位制的第7位為1,以次類推,32是2的5次,16是2的4次,8是2的3次,2是2的1次,都可以被餘數可減,其分別的位數上為1,最後餘1,最後一位為1。所以123的二進位制為:1111011
知道二進位制後,用二進位制轉成八進位制和十六進製制
八進位制:右往左每三位二進位制為一組用一位八進位制的數字來表示,不足三位的用0補足,
二進位制:1 111 011
八進位制: 1 7 3
二進位制與八進位制間的關係
二進位制 000 001 010 011 100 101 110 111
八進位制 0 1 2 3 4 5 6 7
十六進製制:右往左每四位二進位制為一組用一位八進位制的數字來表示,不足四位的用0補足,
二進位制:0111 1011
十六進製制: 7 b
二進位制與十六進製制的關係
2進製 0000 0001 0010 0011 0100 0101 0110 0111
16進製制 0 1 2 3 4 5 6 7
2進製 1000 1001 1010 1011 1100 1101 1110 1111
16進製制 8 9 a(10) b(11) c(12) d(13) e(14) f(15)
2樓:倒霉熊
123/2 = 61 .......1
61/2 = 30 ..........130/2 = 15............015/2=7 ................
17/2=3......................13/2=1......................11/2=0......................
1(餘數)所以,而二進位制
為 1111011
同理:八進位制為:173
十六進製制為:7b
3樓:匿名使用者
int x ;
scanf("%d",&x);
std::stacks;
for(int i=0; i<32; i++)bool t = false;
for (int i = 0; i< 32; i++)printf("\n");
printf("%o\n",x);
printf("%x\n,x);
十進位制100轉換成二進位制,八進位制,十六進製制,寫出步驟
4樓:丿
1、100轉換成二進位制為1100100,步驟如下:
(1)將100按照2的加權項。
(2)從右向左填充二進位制數字。
2、100轉換成八進位制為144,步驟如下:
(1)100的二進位制結果「1100100」,從右向左每三個數字分為一組。
(2)將每組的結果分別轉換為八進位制。
3、100轉換成十六進製制為64,步驟如下:
(1)100的二進位制結果「1100100」,從右向左每四個數字分為一組。
(2)將每組的結果分別轉換為十六進製制。
5樓:不咩
1、十進位制轉換二進位制
2 /100 0
2/50 0
2/25 1
2/12 0
2/6 0
3/2 1
1/2 1
然後從尾到頭讀數就是 1100100
二進位制轉換八進位制是3位一組
所以就是 001 100 100 位數不夠,前面補0
2、八進位制與二進位制、十六進製制之間關係與具體步驟
八進位制 對應二進位制 十六進製制 對應二進位制 十六進製制 對應二進位制
0 000 0 0000 8 1000
1 001 1 0001 9 1001
2 010 2 0010 a 1010
3 011 3 0011 b 1011
4 100 4 0100 c 1100
5 101 5 0101 d 1101
6 110 6 0110 e 1110
7 111 7 0111 f 1111
然後對應二進位制數 八進位制3為一組 十六進製制4位一組
二進位制1100100 對應八進位制 001 100 100 就是八進位制數 144
二進位制1100100 對應十六進製制 0110 0100 就是十六進製制 64
擴充套件資料
1、十進位制
人類天然選擇了十進位制。
由於人類解剖學的特點,雙手共有十根手指,故在人類自發採用的進製中,十進位制是使用最為普遍的一種。成語「屈指可數」某種意義上來說描述了乙個簡單計數的場景,而原始人類在需要計數的時候,首先想到的就是利用天然的算籌——手指來進行計數。
2、二進位制
二進位制有兩個特點:它由兩個數碼0,1組成,二進位制數運算規律是逢二進一。
為區別於其它進製,二進位制數的書寫通常在數的右下方注上基數2,或加後面加b表示,其中b是英文二進位制binary的首字母。
3、八進位制
由於二進位制資料的基數r較小,所以二進位制資料的書寫和閱讀不方便,為此,在小型機中引入了八進位制。八進位制的基數r=8=2^3,有數碼0、1、2、3、4、5、6、7,並且每個數碼正好對應三位二進位制數,所以八進位制能很好地反映二進位制。
八進位製用下標8或資料後面加o表示 例如:二進位制資料 ( 11 101 010 . 010 110 100 )2 對應八進位制資料 (352.264)8或352.264o。
4、十六進製制
由於二進位制數在使用中位數太長,不容易記憶,所以又提出了十六進製制數。
十六進製制數有兩個基本特點:它由十六個數碼:數字0~9加上字母a-f組成(它們分別表示十進位制數10~15),十六進製制數運算規律是逢十六進一,即基數r=16=2^4,通常在表示時用尾部標誌h或下標16以示區別,在c語言中用新增字首0x以表示十六進製制數。
5、進製轉換
進製轉換是人們利用符號來計數的方法。進製轉換由一組數碼符號和兩個基本因素「基數」與「位權」構成。
基數是指,進製計數制中所採用的數碼(數制中用來表示「量」的符號)的個數。
位權是指,進製中每一固定位置對應的單位值。
123.125這個十進位制的數分別轉化成二進位制,八進位制,十六進製制的演算方法
6樓:匿名使用者
像這種可以有規律按2的
n次方進行整數化的數,可直接乘以相應的2的n次方進內行整數化,化為二進位制容後再移動相應的位數。
小數部分0.125,即1/8,乘以8(2^3)是最好的整數化方法。
(123.125)10*(2^3)10
=(123.125)10*(8)10
=(985)10
=(3d9)16
=(0011 1101 1001)2
因為最初乘了8,即2的2次方,所以換算成二進位制時應右移三位,即最終結果等於(001111011.001)2。
ps:為什麼要換算成十六進製制?乙個十六進製制數就等於四個二進位制位,一次性就計算了四個二進位制位的結果,這當然是相對比較有效率的做法。
乙個八進位制數就等於三個二制位,
所以(001111011.001)2可按每三位進行一次分割,缺位補零即:(001 111 011.001)2=(173.1)8乙個十六進製制數就等於四個二制位,
所以(001111011.001)2可按每四位進行一次分割,缺位補零即:(0111 1011.0010)2=(7b.2)16
將十進位制數2746.12851轉化成二進位制,八進位制,十六進製制的過程
7樓:鄙視花開
二進位制101010111010.001000001,八進位制5272.101,十六進製制aba.20f。
一、將整數部分轉換為二進位制數,採用輾轉除以2並取餘數
1、2746/2 = 1373 餘0
2、1373/2 = 686 餘1
3、686/2 = 343 餘0
4、343/2 = 171 餘1
5、171/2 = 85 餘1
6、85/2 = 42 餘1
7、42/2 = 21 餘0
8、21/2 = 10 餘1
9、10/2 = 5 餘0
10、5/2 = 2 餘1
11、2/2 = 1 餘0
12、1/2 = 0 餘1
13、所以,整數部分的二進位制數為(自下而上):101010111010
二、將小數部分轉換成二進位制數,採用輾轉乘以2並取整數
1、0.12851*2 = 0.25702 整數部分:0
2、0.25702*2 = 0.51404 整數部分:0
3、0.51404*2 = 1.02808 整數部分:1
4、0.02808*2 = 0.05616 整數部分:0 (這一步只取上一步的小數部分)
5、0.05616*2 = 0.11232 整數部分:0
6、(如此一直算下去,直到滿足小數點後的位數精度)
7、所以,整數部分的二進位制數為(自上而下):001000001
三、將得到的二進位制結果101010111010.00100轉換為8進製
1、從小數點開始往左,每三個二進位制為一組,將整數部分轉換為8進製數:101 010 111 010 --> 5272
2、從小數點開始往右,每三個二進位制為一組,將小數部分轉換為8進製數:001 000 001 --> 101
3、所以8進製的結果為:5272.101
四、將得到的二進位制結果101010111010.00100轉換為16進製制
1、從小數點開始往左,每四個個二進位制為一組,將整數部分轉換為16進製制數,如果不夠4位二進位制數,在最左邊補0:1010 1011 1010 --> aba
2、從小數點開始往右,每四個二進位制為一組,將小數部分轉換為16進製制數,如果不夠4位二進位制數,在最右側補1:0010 0000 11111 --> 20f
3、所以16進製制結果為:aba.20f
8樓:匿名使用者
2746.12851(十進位制)
二進位制:101010111010.001000001
八進位制:5272.101
十六進製制:aba.20f
轉換步驟為:
1)將整數部分轉換為二進位制數,採用輾轉除以2並取餘數
2746/2 = 1373 餘0
1373/2 = 686 餘1
686/2 = 343 餘0
343/2 = 171 餘1
171/2 = 85 餘1
85/2 = 42 餘1
42/2 = 21 餘0
21/2 = 10 餘1
10/2 = 5 餘0
5/2 = 2 餘1
2/2 = 1 餘0
1/2 = 0 餘1 (結束)
所以,整數部分的二進位制數為(自下而上):101010111010
2)將小數部分轉換成二進位制數,採用輾轉乘以2並取整數
0.12851*2 = 0.25702 整數部分:0
0.25702*2 = 0.51404 整數部分:0
0.51404*2 = 1.02808 整數部分:1
0.02808*2 = 0.05616 整數部分:0 (這一步只取上一步的小數部分)
0.05616*2 = 0.11232 整數部分:0
……(如此一直算下去,直到滿足小數點後的位數精度)
所以,整數部分的二進位制數為(自上而下):00100...
3)將得到的二進位制結果101010111010.00100轉換為8進製
從小數點開始往左,每三個二進位制為一組,將整數部分轉換為8進製數:
101 010 111 010 --> 5272
從小數點開始往右,每三個二進位制為一組,將小數部分轉換為8進製數:
001 000 001 --> 101
所以8進製的結果為:5272.101
4)將得到的二進位制結果101010111010.00100轉換為16進製制
從小數點開始往左,每四個個二進位制為一組,將整數部分轉換為16進製制數,如果不夠4位二進位制數,在最左邊補0:
1010 1011 1010 --> aba
從小數點開始往右,每四個二進位制為一組,將小數部分轉換為16進製制數,如果不夠4位二進位制數,在最右側補1:
0010 0000 11111 --> 20f
所以16進製制結果為:aba.20f
十進位制轉二進位制原理,十進位制轉二進位制的這方法的數學原理是什麼啊?求大神詳解!
用2輾轉相除至結果為1 將餘數和最後的1從下向上倒序寫 就是結果 例如302 302 2 151 餘0 151 2 75 餘1 75 2 37 餘1 37 2 18 餘1 18 2 9 餘0 9 2 4 餘1 4 2 2 餘0 2 2 1 餘0 故二進位制為100101110 二進位制轉十進位制 從...
將十進位制數47轉換為二進位制,八進位制,十進位制,十六進製制,大哥們,有沒有詳細過程
47 2 23 餘1 23 2 11 餘1 11 2 5 餘1 5 2 2 餘1 2 2 1 餘0 1 2 0 餘1 以上從下到上餘數排列為101111,即47的二進位制表示,八進位制和十六進製制照此辦理 即除以8 16 得整數商和餘數,直到商為0,然後將餘數用相應進製數連線起來 47 1 2 5 ...
1122db十進位制轉二進位制
樓上的回答錯誤 1.122 d b 十進位制轉二進位制 答案是111010十進位制轉二進位制是用的除以二倒序取餘的方法。十進位制轉二進位制 用2輾轉相除至結果為1 將餘數和最後的1從下向上倒序寫 就是結果 例如302 302 2 151 餘0 151 2 75 餘1 75 2 37 餘1 37 2 ...