1 實現十進位制純小數向二進位制 八進位制 十六進位制純小數的轉換

2021-03-25 05:34:02 字數 1881 閱讀 4443

1樓:匿名使用者

以下是basic程式

,a為十進位制小數,x為要轉換的進位制。供參考。

10 a=0.875

11 x=16

12 i=0

20 print "0.";

21 a=a*x

22 b=int(a)

23 a=a-b

24 print b;

25 i=i+1

26 if (a>0)and(i<10) goto 2130 end

純小數數制轉換 要求(1)實現十進位制純小數向二進位制、八進位制、十六進位制純小數的轉換(2)若小數部分

2樓:匿名使用者

a為十進位制小數,x為要轉換的進位制。供參考。

#include

void main()}

如何用c語言把十進位制純小數轉換成二進位制,八進位制,十六進位制。求**?謝謝

3樓:最愛佳偶天橙

#include

#include

#include

/*該函式可以實現小於整型資料的任意進位制之間轉換*//*以下函式將a進位制數s轉換成b進位制並輸出*/void f(int a,int b,char s)for(i=0;t!=0;i++) /*再轉換成b進位制*/r[i]='\0';

s=strrev(r);

printf("%s",s);}

設計一個程式將十進位制純小數轉化成二進位制,八進位制,十六進位制

4樓:匿名使用者

php的。其實程式都一樣,關

鍵是方法。

function decto_bin($datalist,$bin)$tlen=strlen($t);

if($tlen%$bytelen!=0)$aoutchar=$t;

}return $aoutchar;}

用定點補碼錶示純小數,採用8位字長,編碼10000000表示的十進位制數是-1,請教怎麼計算出來的?

5樓:匿名使用者

你怎麼盡給我出難題

機器數的補碼可由原碼得到。若機器數為正數,則其補碼與原碼一樣;如果機器數為負數,則其補碼是對它的原碼(除符號位外)各位取反,再加1而得到的(也就是對其反碼再加1)。也可用公式表示,若x是純整數,則:

x 0<=x<=2^(n-1)-1

[x]補

2^(n-1)+x -2^(n-1)-1<=x<=0若x是純小數,則:

x 0<=x<=1

[x]補

2+x -1<=x<=0

[-1]補=1 1111111 負數補碼是對它的原碼(除符號位外)各位取反

第一位不變,其它相反。所以是10000001編碼11111111表示-0.0078125。

因為:編碼1111111的反碼是0000000,再加1為:0000001,是0.0078125。

以上希望對你有用

6樓:匿名使用者

也可用公式表示,若x是純整數,則

:x 0<=x<=2^(n-1)-1

[x]補

2^(n-1)+x -2^(n-1)-1<=x<=0若x是純小數,則:

x 0<=x<=1

[x]補

2+x -1<=x<=0

[-1]補=1 1111111 負數補碼是對它的原碼(除符號位外)各位取反

第一位不變,其它相反。所以是10000001編碼11111111表示-0.0078125。

因為:編碼1111111的反碼是0000000,再加1為:0000001,是0.0078125。

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

r進位制 r為任何整數 轉換為十進位制的方法是 整數部分從小數點右往左依次按位乘以r的0次冪,r的1次冪,r的2次冪,小數部分從小數點後向右依次按位乘以r的 1次冪,r的 2次冪,r的 3次冪,將各位結果相加即可。所以 10 1101 0110 1011.11 2 2 13 2 11 2 10 2 ...

關於十進位制與二進位制,什麼是二進位制和十進位制 關於二進位制和十進位制

是。十進位制是滿十進一,二進位制是滿二進一。如8十進位制就是4,二進位制就是100。二進位制轉化十進位制 設一個二進位制數的百位上的數是a,十位是b,個位是c,則十進位制的數為 a 2 2 b 2 1 c 2 0 如上例,a 1,b 0,c 1 如果有千位的話,就用千位上的數乘以二的三次方加上百位上的數乘以二的平方...

matlab實現任意十進位制和二進位制的轉換

十進位制 二進位制 dec2bin 二進位制 十進位制 bin2dec 十六進位制轉十進位制數演算法 十六進位制中,abcdef分別表示10 11 12 13 14 15個位 十位 16 百位 256 即 16的0,1,2 次方 例如5bb 11 11 16 5 256 1467 十進位制轉換十六進...