您的位置:

c语言2进制8进制16进制,c语言中的二进制八进制十六进制

本文目录一览:

二进制、八进制、十进制、十六进制,在C语言中用在哪里

二进制是计算机在实际计算中使用的计数方式,存储和运算都是二进制的

八、十、十六进制是在编程时,不方便使用二进制(位数多,凌乱,不直观),所以用这些进制来写到程序中,计算机在编译时会将它们转换成二进制数据来用。所以这些进制是方便程序设计者写程序的。

c语言中二进制 十进制 八进制 十六进制之间的换算?

二进制的1101转化成十进制

 

 1101(2)=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13

转化成十进制要从右到左用二进制的每个数去乘以2的相应次方

不过次方要从0开始

十进制转二进制:

用2辗转相除至结果为1

将余数和最后的1从下向上倒序写

就是结果

例如302

302/2

=

151

余0

151/2

=

75

余1

75/2

=

37

余1

37/2

=

18

余1

18/2

=

9

余0

9/2

=

4

余1

4/2

=

2

余0

2/2

=

1

余0

1/2

=

余1

故二进制为100101110

二进制转八进制

在把二进制数转换为八进制表示形式时,对每三位二进制位进行分组,应该从小数点所在位置分别向左向右划分,若整数部分倍数不是3的倍数,可以在最高位前面补若干个0;对小数部分,当其位数不是的倍数时,在最低位后补若干个0.然后从左到右把每组的八进制码依次写出,即得转换结果.

你算一下就知道了啊

比如110=2^2+2+0=6

二进制转十六进制

要将二进制转为16进制,只需将二进制的位数由右向左每四位一个单位分隔,分的不够的前边补零,用四位数的二进制数来代表一个16进制。转换表如下,括号内为十六进制

0000(0)

0001

(1)

0010

(2)

0011

(3)

0100

(4)

0101

(5)

0110

(6)

0111

(7)

1000

(8)

1001

(9)

1010(A)

1011

(B)

1100

(C)

1101

(D)

1110

(E)

1111

(F)

例如:10101011划分为1010

1011,根据转换表十六进制为AB

c语言的二进制、八进制、十六进制之类的进制是什么意思?举几个例子。

进制---即逢几进一的意思;二进制即逢二进一,八进制即逢八进一,十六进制即逢十六进一

如:十进制逢时进一,计数规则为:0、1、2、3、4、5、6、7、8、9;数到10的时候向前进1变为10、11等等

二进制是逢二进一,计数规则为0、1,该数到2时向前进1,变为10(对应十进制的2)、11(对应十进制的3)

那位高人能给我讲讲C语言中二进制,八进制,16进制是怎么换算的?谢谢了!!!

二进制转换含小数点部分

十六进制大同小意,把除以二的数改成16就可以了,如果不明白加我百度HI

#include

stdio.h

void

bit(int

a);

void

bit2(double

a);

int

main()

{

double

a;

int

b;

scanf("%lf",a);

b

=

(int)a;

printf("%d",b);

if((a-b)0(a-b)1)

{

bit(b);

bit2(a-b);

}

else

bit(b);

}

void

bit(int

a)

{

if(a0)

bit(a/2);

printf("%d",a%2);

}

void

bit2(double

a)

{

static

int

c

=

0;

if(c==0)

printf(".");

printf("%d",(a*21)?(int)(a*2):0);

if(a==0||c5)

{

++c;

bit2(a*2-(int)(a*2));

}

}

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进制的所有结果。