c语言中的二进制,八进制,十进制,十六进制都怎么算……,可否举例,谢?

如题所述

先讲一下,二进制与十进制。
以10为例,过程如图。

10进制转化为二进制
10÷2=5....0(余数为0)
5÷2=2....1(余数为1)
2÷2=1....0
1÷2=0....1

然后,非常重要的一步,将余数倒序相加
即:1010

这里特地说明一下,当被除数比除数小时,余数永远为它自己。
如:8÷10 余数为8


二进制转化为十进制

1010
从 右 算起分别对应 :
1 2 4 8
也就是 2的1次方,2次方,3次方




第三步,小数部分怎么计算呢
如10.1

很简单,将0.1乘以2
在乘到整数之前,将结果的整数取出。
如:
0.1x2=0.2.....0
0.2x2=0.4.....0
0.4x2=0.8......0
0.8x2=1.6......1
正序排下来: 0001












至于八进制和十六进制,其实是一样的方法。就是把2换成8。


顺便说一下,如果你是要做开发而不是考试的话可以直接用win系统自带的计算器,选择“程序员” 模式可以直接得到2.8.10.16进制的所有结果。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-27

    二进制逢二进一,八进制逢八进一,十进制逢十进一,十六进制逢十六进一。

    所以二进制的权是2^n,八进制是8^n,十进制是10^n,十六进制是16^n。

    它们的计算根据每一位的数值乘以它们的权的和,如下:

二进制数值(1101):1*2^0+0*2^1+1*2^2+1*2^3

八进制数值(4276):6*8^0+7*8^1+2*8^2+4*8^3

十进制数值(4276):6*10^0+7*10^1+2*10^2+4*10^3

十六进制数值(4276):6*16^0+7*16^1+2*16^2+4*16^3

本回答被提问者采纳
第2个回答  2019-11-27

点击网页链接(网页链接),里面输入二进制,直接转换成其他进制。各种转换都有。

相似回答