二進位制如何轉為十進位制 浮點數c,二進位制如何轉為十進位制 浮點數 c

時間 2021-07-22 08:48:04

1樓:匿名使用者

樓上的 好像還是不能解決浮點數的問題啊

int i=0;

int j,k=0;

double value=0.0;

char d[100];

cout<<"請輸入:\n";

cin>>d;

j=strlen(d);

for(i=(j-1);i>=0;i--);cout<<"十進位制是:"<

這段可以解決二進位制轉為十進位制 但是不能實現浮點數的運算 大家繼續幫忙啊(我是樓主)

2樓:晨早早

樓上的,你用的是什麼語言,我怎麼看不明白啊。

用c語言程式設計:

include

include

main()

;a=(int *)malloc(100*sizeof(int);//動態分配空間

top=base=0;//建立一個空棧

int m;

long s=0;

int list=;

m=strlen(list);

int b[m];

int *p=list;

if(*p!=\0)

dowhen(top==base);

for(i=0;i

s=s+pow(int (2*b[i]),int i);

printf("%ld",s);}

3樓:

"10 >> 2"

,"十進位制轉為二進位制"

,"十進位制數值∶",0,,,,"#num!","二進位制數值∶",0

,2,0,"…",0,1,"#num!"

,2,0,"…",0,10,"#num!"

,2,0,"…",0,100,"#num!"

,2,0,"…",0,1000,"#num!"

,2,0,"…",0,10000,"#num!"

,2,0,"…",0,100000,"#num!"

,2,0,"…",0,1000000,"#num!"

,2,0,"…",0,10000000,"#num!"

,2,0,"…",0,100000000,"#num!"

,2,0,"…",0,1000000000,"#num!"

"2 >> 10"

,"二進位制轉為十進位制"

,,,,"#num!",,"於十進位制的值"

,"二進位制數值∶",0,,"#num!",10,0,"x",2,0,"=",0

,,,,"#num!",100,0,"x",2,1,"=",0

,"十進位制數值∶",0,,"#num!",1000,0,"x",2,2,"=",0

,,,,"#num!",10000,0,"x",2,3,"=",0

,,,,"#num!",100000,0,"x",2,4,"=",0

,,,,"#num!",1000000,0,"x",2,5,"=",0

,,,,"#num!",10000000,0,"x",2,6,"=",64

,,,,"#num!",100000000,0,"x",2,7,"=",128

,,,,"#num!",1000000000,0,"x",2,8,"=",256

,,,,"#num!",10000000000,0,"x",2,9,"=",512

,,,,,100000000000,"總和= ",,,,,0

"10>>2(digit)"

,"十進位制小數轉為二進位制小數"

,"十進位制小數∶",,,"小數部份乘二","整數部份","小數部分"

,,,,0,0,0,0.1

,"二進位制小數∶",0,,0,0,0,0.01

,,,,0,0,0,0.001

,,,,0,0,0,0.0001

,,,,0,0,0,"1e-05"

,,,,0,0,0,"1e-06"

,,,,0,0,0,"1e-07"

,,,,0,0,0,"1e-08"

,,,,0,0,0,"1e-09"

,,,,0,0,0,"1e-10"

,,,,0,0,0,"1e-11"

,,,,0,0,0,"1e-12"

,,,,0,0,0,"1e-13"

,,,,0,0,0,"1e-14"

,,,,0,0,0,"1e-15"

,,,,0,0,0,"1e-16"

,,,,0,0,0,"1e-17"

,,,,0,0,0,"1e-18"

,,,,0,0,0,"1e-19"

,,,,0,0,0,"1e-20"

,,,,0,0,0,"1e-21"

"2>>10(digit)"

,"二進位制小數轉為十進位制小數"

,"二進位制小數∶",,,,,"數位"

,,,0,10,,0,"x",2,-1,"=",0

,"十進位制小數∶",0,0,100,,0,"x",2,-2,"=",0

,,,0,1000,,0,"x",2,-3,"=",0

,,,0,10000,,0,"x",2,-4,"=",0

,,,0,100000,,0,"x",2,-5,"=",0

,,,0,1000000,,0,"x",2,-6,"=",0

,,,0,10000000,,0,"x",2,-7,"=",0

,,,0,100000000,,0,"x",2,-8,"=",0

,,,0,1000000000,,0,"x",2,-9,"=",0

,,,0,10000000000,,0,"x",2,-10,"=",0

,,,,,,,,,"總和∶",,0

4樓:

用8421算最簡單,從二進位制的後面開始算起,例如100010010111,從後面4個為一組,二進位制為1的數字對應,為0的數字不對應!!!

8 4 2 1

0 1 1 1

0+4+2+1=7

記住要從後向前算!!

5樓:

用計算機知識你可以啦

如何轉換浮點數的二進位制格式為十進位制

6樓:隨便什麼名啦啦

二進位制的小數轉換為十進位制主要是乘以2的負次方,從小數點後開始,依次乘以2的負一次方,2的負二次方,2的負三次方等。

例如:二進位制數0.001轉換為十進位制。

第一位為0,則0*1/2,即0乘以2負一次方。

第二位為0,則0*1/4,即0乘以2的負二次方。

第三位為1,則1*1/8,即1乘以2的負三次方。

各個位上乘完之後,相加,0*1/2+0*1/4+1*1/8得十進位制的0.125

擴充套件資料:

二進位制轉換為十進位制:

方法:“按權求和”,該方法的具體步驟是先將二迸制的數寫成加權係數式,而後根據十進位制的加法規則進行求和。

規律:個位上的數字的次數是0,十位上的數字的次數是1,......,依次遞增,而十分位的數字的次數是-1,百分位上數字的次數是-2,......,依次遞減。

十進位制轉換為二進位制:

一個十進位制數轉換為二進位制數要分整數部分和小數部分分別轉換,最後再組合到一起。

整數部分採用 "除2取餘,逆序排列"法。具體做法是:用2整除十進位制整數,可以得到一個商和餘數;再用2去除商,又會得到一個商和餘數,如此進行,直到商為小於1時為止,然後把先得到的餘數作為二進位制數的低位有效位,後得到的餘數作為二進位制數的高位有效位,依次排列起來 。

小數部分要使用“乘 2 取整法”。即用十進位制的小數乘以 2 並取走結果的整數(必是 0 或 1),然後再用剩下的小數重複剛才的步驟,直到剩餘的小數為 0 時停止,最後將每次得到的整數部分按先後順序從左到右排列即得到所對應二進位制小數。

通用進位制轉換:

不同進位制之間的轉換本質就是確定各個不同權值位置上的數碼。轉換正整數的進位制的有一個簡單演算法,就是通過用目標基數作長除法;餘數給出從最低位開始的“數字”。

7樓:超級一起的回憶

單精度浮點數轉換十進位制步驟:

1、分割數字的符號、階碼和有效數字;

2、將偏移階碼減去偏移,得到真正的階碼;

3、把數字寫成規格化的二進位制數形式;

4、把規格化的二進位制數改變成非規格化的二進位制數;

5、把非規格化的二進位制數轉換成十進位制數。

單精度浮點數轉換十進位制舉例:

把協處理器中的浮點數1100000111001001000000000000轉換成十進位制數

解:1、把浮點數1100000111001001000000000000分割成三部分,可得:

符號位是1,階碼是10000011,尾數是1001001000000000000

2、還原階碼:10000011 – 01111111=100

3、該浮點數的規格化形式:1.1001001×24    (其中前面的“1.”從隱含位而來)

4、該浮點數的非規格化形式:11001.001

5、該浮點數的十進位制數為-25.125        (因為符號位為1,所以,該數是負數)

二進位制負數補碼轉為十進位制

沙裡波特 59 原碼是 1011 1011。59 補碼是 1100 0101 二進位制 197 十進位制 59 補碼是 1100 0101 二進位制 c5 16進位制 59 補碼是 1100 0101 二進位制 305 八進位制 這是用八位補碼錶示的,最高位表示為符號位,0代表是正數,1代表負數 5...

十進位制轉二進位制演算法,二進位制轉十進位制,十進位制轉二進位制的演算法 求助

向前看 如果要將十進位制數轉換為二進位制數,則應將十進位制數的整數部分和小數部分分別轉換為二進位制數,然後將這兩部分的二進位制數合併得到完整的二進位制數。首先,通過短除法,十進位制數可以除以2得到多個餘數。最後,將餘數從下到上進行排列組合,得到二進位制數。然後將小數部分乘以2,取每一步的整數部分,從...

二進位制十進位制轉換公式,二進位制轉十進位制公式

比如10進位制的15轉換2進位制 用15除以2,商為7,餘數為1,再用7除以2,商為3,餘數為1,再用3除以2,商為1,餘數為1,再用1除以2,商為0,餘數為1,最後吧餘數倒過來排列就為二進位制的1111 即商為0時的1,商為1時的1,商為3時的1,商為7時的1 二進位制轉十進位制。以二進位制的11...