二进制转换十进制的简单方法?

有没有一种简便的方法来来实践二进制转换十进制,有一个二进制数比如:10010110101有没有简单的方法一眼就能转换成十进制。或有一个十进制简单方法来转换成二进制。这个方... 有没有一种简便的方法来来实践二进制转换十进制,有一个二进制数比如:10010110101有没有简单的方法一眼就能转换成十进制。或有一个十进制简单方法来转换成二进制。这个方法有吗?多举几个例子或有小数的。
谢谢你们了我想学习非常好奇C语言想学习,但是得先把二进制转换学会啊!或有朋友愿意教教我的我感激不尽在这谢谢你们了!谢谢!
展开
 我来答
yihla5739
高粉答主

2018-12-04 · 每个回答都超有意思的
知道答主
回答量:149
采纳率:100%
帮助的人:4.7万
展开全部

方法一:从右到左用二进制的每个数去乘以2的相应次方,小数点后则是从左往右

例:二进制数1101.01转化成十进制

1101.01(2)

=1*2【0】+0*2【1】+1*2【2】+1*2【3】 +0*2【-1】+1*2【-2】

=1+0+4+8+0+0.25=13.25(10)

方法二:把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。

对于有n位整数,m位小数的二进制数用加权系数展开式表示,可写为:N(2)=an-1×2n-1+an-2×2n-2+……+a1×21+a0×20+a-1×2-1+a-2×2-2+……+a-m×2-m(10)式中aj表示第j位的系数,它为0和1中的某一个数。

例:二进制数1101转化成十进制

1101(2)

=1*2【3】+1*2【2】+0*2【1】+1*2【0】

=13(10)

注意:

1、【】括号内数字代表次方,如【2】为二次方,【-1】为负一次方。

2、()括号内代表进制数,(2)为二进制,(10)为十进制。

扩展资料:

以下为二进制转是进制代码:

int readint(int a)  //a 是传入二进制位数

{  

int sum = 0;   

while (a--) {

sum *=2;

sum += getchar() - '0';  // getchar 读入相应十进制的每一位 

}

return sum;  // sum 是相应的十进制

}

参考资料来源:百度百科-十进制转二进制

yangsos123
2009-01-07 · TA获得超过1498个赞
知道小有建树答主
回答量:695
采纳率:0%
帮助的人:440万
展开全部
有啊 但不可能一眼看出
10010110101可以看成是(从后往前读)
1*2^0+0*2^1+1*2^2+0*2^3+1*2^4……+1*2^10
算起来还是比较烦的。
十进制数——二进制数
例:64.125(10)= ? (2)
先看整数位
64/2=32……0
32/2=16……0
16/2=8……0
8/2=4……0
4/2=2……0
2/2=1……0
1/2=0……1
从下往上读,得到整数位为1000000;
再看小数位
0.125*2=0.25(个位数字为0,再取小数点后的数)
0.25*2=0.5 (个位数字为0)
0.5*2=1 (个位数字为1)
一直乘到所得数字正好为1为止,再自上往下依次读出所有的数,则
0.125(10)=0.001(2);
所以64.125(10)=1000000.0001
别有畏惧心理 呵呵
(我是学pascal的,个人衷心希望你也学pascal,NOIP用pascal的比用c++或C的多得多~)
自己再出几道题算一算吧!
用电脑里的计算器验算一下!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
单绝鼻吃零08
2009-01-20 · TA获得超过399个赞
知道答主
回答量:108
采纳率:0%
帮助的人:0
展开全部
以16进制为桥梁
10转16再转2 或2转16再转10
10转16 也和 10转2 一样 就不在论述了
主要讲 2和16 的互转
2转16 要诀4位化1位 例如 10101111 可以先看成 1010 1111 然后用8421法则 像1010=8+0+2+0=12(10进制)=c(16进制)因此1010 1111换成16进制就是cf
16转2 就是1化4 反过来就行了
小子 你滴大大的明白?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
928637544
2009-01-15 · TA获得超过930个赞
知道答主
回答量:417
采纳率:0%
帮助的人:207万
展开全部
咱们一般用十进制,就是加十个数进一位,二进制就是加两个数就进一位 1就是1, 2就是10 ,3就是101, 4就是110 ,5就是111 .....看出来规律了吧,其实并不难
要是用四位数表示就是0001 0010 0011 0101 0110
0111 咱们一般用十进制,就是加十个数进一位,二进制就是加两个数就进一位 1就是1, 2就是10 ,3就是101, 4就是110 ,5就是111 .....看出来规律了吧,其实并不难
要是用四位数表示就是0001 0010 0011 0101 0110
0111
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
金柏汇
2009-01-17
知道答主
回答量:6
采纳率:100%
帮助的人:0
展开全部
of course
10010110101可以看成是(从后往前读)
1*2^0+0*2^1+1*2^2+0*2^3+1*2^4……+1*2^10
算起来还是比较烦的。
十进制数——二进制数
例:64.125(10)= ? (2)
先看整数位
64/2=32……0
32/2=16……0
16/2=8……0
8/2=4……0
4/2=2……0
2/2=1……0
1/2=0……1
从下往上读,得到整数位为1000000;
再看小数位
0.125*2=0.25(个位数字为0,再取小数点后的数)
0.25*2=0.5 (个位数字为0)
0.5*2=1 (个位数字为1)
一直乘到所得数字正好为1为止,再自上往下依次读出所有的数,则
0.125(10)=0.001(2);
所以64.125(10)=1000000.0001
别有畏惧心理 呵呵

自己再出几道题算一算吧!
用电脑里的计算器验算一下!
我相信,还有其他算法!
自己推敲吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(16)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式