十二進位制轉二進位制 2018

2021-09-12 07:55:02 字數 1432 閱讀 9865

(1)逐個輸出對應的十進位制,用空格隔開(高位到地位)(10』)

(2)輸出對應的十進位制數(10』)

(3)轉為二進位制,用4個位元組表示(10』)

例如:輸入a2

輸出:10 2

12200000000 00000000 00000000 01111010

思路:1)利用transfer(char ch)將單個字元乙個個的轉化為對應的十進位制,a和a對應數字10,b和b對應數字11,0-9字元對應數字0-9;

2)有了單個的十進位制數,從前往後累次相加,注意低下標的數字有更高的冪次,所以用t計數,賦初值len-1,用數學函式pow(12,t)表示12的t次方。

3)定義void todouble(int x)將十進位制轉換為4個位元組的二進位制,初始化為全零,又給定了固定輸出位元組,可避免填充零的麻煩。

**:

#include 

#include

#include

#include

#include

using namespace std;

inttransfer

(char ch)

else

if(ch==

'a')

else

if(ch==

'a')

else

if(ch==

'b')

else

return x;

}void

todouble

(int x)

;//初始化為全零,又給定了固定輸出位元組,可避免填充零的麻煩

int i=31;

while

(x>

0&&i>=0)

for(

int i=

0;i<

8;i++

) cout<<

" ";

for(

int i=

8;i<

16;i++

) cout<<

" ";

for(

int i=

16;i<

24;i++

) cout<<

" ";

for(

int i=

24;i<

32;i++

) cout<

}int

main()

if(i==len-1)

t--;}

cout<

todouble

(sum)

;//在函式裡邊直接輸出更簡潔

}return0;

}

執行結果:

二進位制 二進位制起源

現代通訊技術的基礎是二進位制編碼。早在1865年麥克斯韋總結出麥克斯韋方程組之前,美國人摩斯 morse 於1837年發明了摩斯電碼和有線電報。有線電報的出現,具有劃時代的意義 它讓人類獲得了一種全新的資訊傳遞方式,這種方式 看不見 摸不著 聽不到 完全不同於以往的信件 旗語 號角 烽火,這也是二進...

八進位制轉二進位制

位 bit 一位二進位制數,又稱位元 位元組 byte 1b 8b 記憶體儲存的最小單元 字長 同一時間內,計算機能處理的二進位制位數 字長決定了計算機的運算精度,字長越長,計算機的運算精度就越高。因此,高效能的計算機,其字長較長,而效能較差的計算機,其字長相對要短一些。其次,字長決定了指令直接定址...

二進位制轉十進位制

二進位制轉十進位制方法很多,如字元陣列,指標法等 下面用字串函式的方法實現 二進位制轉十進位制 主要用 到 string函式性質及pow求乙個數的n次方的函式過載 by adengou 2010.08.04 win7 dev c 5.0 vs 2010 通過 include include incl...