二進制到十進制的轉換
二進制到十進制的轉換使用加權列來識別數字的順序,以確定數字的最終值。
本文引用地址:http://www.104case.com/article/202504/468993.htm二進制到十進制的轉換(基2到基10)及其反向轉換是一個重要的概念,因為二進制數系統構成了所有計算機和數字系統的基礎。
十進制或“十進”計數系統使用基10的數系統,其中數字中的每個數字取0到9之間的十個可能值之一,稱為“數字”,例如21310(二百一十三)。
除了有10個數字(0到9)之外,十進制數系統還具有加法(+)、減法(-)、乘法(×)和除法(÷)的操作。
在十進制系統中,每個數字的值是其前一個數字的十倍,這個十進制數系統使用一組符號b和基q來確定數字中每個數字的權重。
例如,六十中的六比六百中的六具有更低的權重。然后在二進制數系統中,我們需要一些方法將十進制轉換為二進制以及從二進制轉換回十進制。
任何數系統都可以通過以下關系總結:
十進制數系統
在十進制、基10(den)或十進數系統中,每個整數數字列從右到左沿著數字移動時具有單位、十、百、千等值。數學上這些值寫為100, 101, 102, 103等。
然后,小數點左側的每個位置表示10的遞增正冪。同樣,對于分數數字,數字的權重從左到右變得更負,10-1, 10-2, 10-3等。
因此,我們可以看到“十進制數系統”具有基10或模10(有時稱為MOD-10),其中十進制系統中每個數字的位置表示該數字的幅度或權重,因為q等于“10”(0到9)。例如,20(二十)與說2 x 101相同,因此400(四百)與說4 x 102相同。
任何十進制數的值將等于其數字乘以其各自權重的和。例如:N = 616310(六千一百六十三)在十進制格式中等于:
6000 + 100 + 60 + 3 = 6163
或者可以寫為反映每個數字的權重:
(6×1000) + (1×100) + (6×10) + (3×1) = 6163
或者可以寫為多項式形式:
( 6×103 ) + ( 1×102 ) + ( 6×101 ) + ( 3×100 ) = 6163
在這個十進制數系統示例中,最左邊的數字是最有效數字(MSD),最右邊的數字是最不有效數字(LSD)。換句話說,數字6是MSD,因為其最左邊的位置承載最大的權重,數字3是LSD,因為其最右邊的位置承載最小的權重。
二進制數系統
二進制數系統是所有數字和計算機系統中最基本的數系統,二進制數遵循與十進制數系統相同的規則。但與使用10的冪的十進制系統不同,二進制數系統基于2的冪,從基2到基10進行二進制到十進制的轉換。
數字邏輯和計算機系統僅使用兩個值或狀態來表示條件,邏輯電平“1”或邏輯電平“0”,每個“0”和“1”被視為基2(bi)或“二進制數系統”中的單個數字。
在二進制數系統中,二進制數如101100101用一串“1”和“0”表示,從右到左沿著字符串的每個數字的值是前一個數字的兩倍。但由于它是二進制數字,它只能具有“1”或“0”的值,因此q等于“2”(0或1),其位置表示其在字符串中的權重。
由于十進制數是加權數,從十進制轉換為二進制(基10到基2)也將產生一個加權二進制數,最右邊的位是最不有效位(LSB),最左邊的位是最有效位(MSB),我們可以表示為:
二進制數的表示
我們之前看到,在十進制數系統中,每個數字的權重從右到左以10的倍數增加。在二進制數系統中,每個數字的權重以2的倍數增加,如圖所示。因此,第一個數字的權重為1(20),第二個數字的權重為2(21),第三個數字的權重為4(22),第四個數字的權重為8(23),依此類推。
例如,將二進制數轉換為十進制數將是:
通過將所有由“1”表示的位置的十進制數值從右到左相加,我們得到:(256) + (64) + (32) + (4) + (1) = 35710 或三百五十七作為十進制數。
然后,我們可以通過找到二進制數字數組1011001012的十進制等價物并將二進制數字擴展為以2為基數的系列來將二進制轉換為十進制,得到十進制或十進制的等價物35710。
注意,在數轉換系統中,“下標”用于指示相關的基數系統,10012 = 910。如果數字后沒有使用下標,則通常假定為十進制。
二進制到十進制的除以2方法
我們之前已經看到了如何將二進制數轉換為十進制數,但我 們如何將十進制數轉換為二進制數。一種將十進制轉換為二進制數等價物的簡單方法是寫下十進制數并不斷除以2(二)以給出結果和余數“1”或“0”,直到最終結果等于零。
例如。將十進制數29410轉換為其二進制數等價物。
數字294 將每個十進制數除以“2”如圖所示,將給出結果和余數。
如果被除的十進制數是偶數,則結果將是整數,余數將等于“0”。如果十進制數是奇數,則結果將不完全除,余數將是“1”。
通過將所有余數按順序排列,最低有效位(LSB)在頂部,最高有效位(MSB)在底部,獲得二進制結果。
這種除以2的十進制到二進制轉換技術給出了十進制數29410的二進制等價物1001001102,從右到左讀取。這種除以2的方法也適用于轉換到其他數基。
然后我們可以看到,二進制數系統的主要特征是每個“二進制數字”或“位”具有“1”或“0”的值,每個位的權重或值是其前一位的兩倍,從最低或最低有效位(LSB)開始,這被稱為“權重和”方法。
因此,我們可以通過使用權重和方法或通過重復除以2的方法將十進制數轉換為二進制數,并通過找到其權重和將二進制轉換為十進制。
二進制數名稱與前綴
二進制數可以像十進制數一樣進行加減,結果根據使用的位數被組合成幾種大小范圍之一。二進制數有三種基本形式——位(bit)、字節(byte)和字(word),其中位是單個二進制數字,字節是八個二進制數字,字是十六個二進制數字。
將單個位分類為更大的組通常使用以下更常見的名稱:
此外,當從二進制轉換為十進制或甚至從十進制轉換為二進制時,我們需要小心不要混淆這兩組數字。例如,如果我們在頁面上寫下數字10,如果我們假設它是十進制數,它可能意味著數字“十”,或者它同樣可以是二進制中的“1”和“0”在一起,這等于上面加權十進制格式中的數字二。
在將二進制轉換為十進制數字并識別使用的數字或數字是十進制還是二進制時,克服這個問題的一種方法是在最后一個數字后寫一個小數字,稱為“下標”,以顯示所使用的數系統的基。
例如,如果我們使用二進制數字串,我們將添加下標“2”以表示基2數字,因此數字將寫為102。同樣,如果它是標準十進制數字,我們將添加下標“10”以表示基10數字,因此數字將寫為 1010。
今天,隨著微控制器或微處理器系統變得越來越大,單個二進制數字(位)現在被分組為8個以形成單個字節,大多數計算機硬件(如硬盤驅動器和內存模塊)通常以兆字節甚至千兆字節表示它們的大小。
二進制到十進制總結
“位”(BIT)是來自BInary digiT的縮寫術語
二進制系統只有兩種狀態,邏輯“0”和邏輯“1”,基為2
十進制系統使用10個不同的數字,0到9,基為10
二進制數是加權數,其加權值從右到左增加
二進制數字的權重從右到左翻倍
十進制數可以通過使用權重和方法或重復除以2方法轉換為二進制數
當我們從二進制轉換為十進制,或從十進制轉換為二進制時,使用下標以避免錯誤
將二進制轉換為十進制(基2到基10)或將十進制轉換為二進制數字(基10到基2)可以通過上述多種方式完成。當將十進制數字轉換為二進制數字時,重要的是要記住哪個是最低有效位(LSB),哪個是最高有效位(MSB)。
在下一個關于二進制邏輯的教程中,我們將探討將二進制數字轉換為十六進制數字,反之亦然,并展示二進制數字可以由字母以及數字表示。
評論