二进制数转换成十进制数

将10110011转换成十进制数,过程,谢谢。

是原码:2的零次幂*1+1*2的一次幂1+1*2的四次幂4+1*2的五次幂5=1+2+16+32=51前边再加一个负号最后答案为-51
是补码:先安位求反再末尾加一(符号位不变)=11001101=1*2的零次幂+1*2的二次幂+1*2的三次幂+1*2的六次幂=1+4+8+64=77在加上负号左后答案为-77
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-29
10110011.
=1*2^7+0*2^6+1*2^5+1*2^4+0*2^3+0*2^2+1*2^1+1*2^O
注:2^x表示二的多少次方本回答被提问者采纳
第2个回答  2010-06-29
#include"math.h"
main()
{
int a,i,k=-1,y=0;
printf("\n 请输入一个正确的二进制数:");
scanf("%d",&a);
printf("\n%d十进制为:",a);
while(a!=0)
{
i=a%10;
k++;
y+=i*pow(2,k);
a=a/10;
}
printf("%d\n",y);
}
第3个回答  2020-11-22
第4个回答  2020-11-22
相似回答