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 十進位制轉換十六進...