常用的整數間的數制轉換

2021-10-12 18:23:09 字數 1024 閱讀 1811

二、轉換

總結雖然計算機能極快地進行運算,但其內部並不像人類在實際生活中使用的十進位制,而是使用只包含0和1兩個數值的二 進製。當然,人們輸入計算機的十進位制被轉換成二進位制進行計算,計算後的結果又由二進位制轉換成十進位制,這都由作業系統自動完成,並不需要人們手工去做,學習組合語言,就必須了解二進位制(還有八進位制/十六進製制)。

數制也稱計數制,是用一組固定的符號和統一的規則來表示數值的方法。人們通常採用的數制有十進位制、二進位制、八進位制和十六進製制。

數字是指數字符號在乙個數中所處的位置。

基數是指數製所使用數碼的個數。例如,二進位制的基數為2;十進位制的基數為10。

位權是指數制中某一位上的1所表示數值的大小(所處位置的價值)。例如,十進位制的123,1的位權是100,2的位權是10,3的位權是1。二進位制中的 1011 ,第乙個1的位權是8,0的位權是4,第二個1的位權是2,第三個1的位權是1。

基數除法:

把我們要轉換的數除以新的進製的基數,把餘數作為新進製的最低位;

把上一次得的商在除以新的進製基數,把餘數作為新進製的次低位;

繼續上一步,直到最後的商為零,這時的餘數就是新進製的最高位。

例:

方法是:將其它進製按權位展開,然後各項相加,就得到相應的十進位制數。

例:(111)b=(1×2²+1×2¹+1×2º)d=(7)d

2^32^4

二進位制轉換為八進位制、十六進製制:八進位制滿足2³的關係,十六進製制滿足2^4的關係,因此把要轉換的二進位制從低位到高位每3位或4位一組,高位不足時在有效位前面添「0」,然後把每組二進位制數轉換成八進位制或十六進製制即可

八進位制、十六進製制轉換為二進位制時,把上面的過程逆過來即可。

例:(110000011011)b = 1100/0001/1011 =(c1b)h

(c1b)h = 1100/0001/1011 =(110000011011)b

人們通常採用的數制有十進位制、二進位制、八進位制和十六進製制。所以互相間的轉換也得記牢才行。

整數間的進製轉換

先來個段子吧 有個學生抱著一摞書出圖書館,探測儀響了,學生慌忙放下書一本本過探測儀,於是阿姨說,虧你還是大學生,於是把一摞書分成兩半,一半一半的過探測儀,很快就找到了觸發警報的那本。這個阿姨採用了指數效應log2n原理,化簡為繁,那麼為什麼不採用底數為3呢?豈不是更塊?其實探測儀的結果只有兩種 是與...

數制的轉換

鏈棧實現數制的轉換 include using namespace std define ok 1 define error 0 define overflow 2 typedef int status define e 8 typedef struct snodesnode,linkstack s...

數制的轉換

一 十進位制轉換成二進位制 方法 整數部分 除以2取餘數,反序排列 小數部分 乘2取整數,正序排列 補充 有的十進位制小數不能用二進位制小數精確地表示出來,即上述乘法過程永遠不能到達小數部分為0而結束,這時根據精度要求取夠一定位數的二進位制數即可。對於既有整數部分又有小數部分的十進位制的轉換,可以將...