C++和C语言进制转换

目录

一、进制概念。

二、常见进制。

三、进制转换。

其他进制转十进制

整数部分

 小数部分

十进制转其他进制

整数部分

小数部分

二进制转八、十六进制


一、进制概念。

进制就是人们规定的一种进位方式。比如十进制就是满十进一,二进制就是满二进一……x进制就是满x进一。

二、常见进制。

常见进制主要有以下四种:

  1. 二进制 Binary( 0 / 1)
  2. 八进制 Octal( 0 / 1 / 2 / 3 / 4 / 5 / 6 / 7)
  3. 十进制 Decimal( 0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9)
  4. 十六进制 Hexadecima( 0 / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / A / B / C / D / E / F)

下图表示一些简单数字的对应关系:

二进制八进制十进制十六进制
0000000
0001111
0010222
0011333
0100444
0101555
0110666
0111777
10001088
10011199
10101210A
10111311B
11001412C
11011513D
11101614E
11111715F

三、进制转换。

其他进制转十进制

整数部分

如果要把二进制数1011转化成十进制,那么就要把第1位数1乘上2的0次方(1) + 第2位数1乘上2的1次方(2) + 第3位数0乘上2的2次方(0) + 第4位数1乘上2的3次方(8) = 11

所以根据上面的算式我们可以列出:x进制转化成十进制的值 = 第1位乘x的1 - 1次方 + …… + 第n位乘x的n - 1次方 = 第i位 * x^i + 第i位 * x^i + …… +  第n位 * x^n这个式子

八进制同理:

 小数部分

我们用二进制举例子,第一位小数就是二的负一次方*1,也就是1 / 二的一次方,二分之一,剩下的以此类推,把算完的结果加起来,得到5.875。

 八进制也一样:

十进制转其他进制

口诀:整数除x逆取余,小数乘x顺取整 。

整数部分

十进制转其他进制整数部分就是不断的除x(x进制),直到被除数为0,从下往上把余数连起来,所以有一个口诀叫:

整数除x逆取余。

小数部分

十进制转其他进制小数部分就是不断的乘x(x进制),直到乘数为1,从上往下把整数部分数连起来,所以有一个口诀叫:

小数乘x顺取整 

二进制和八、十六进制互转

 三位八进制  = 一位八进制,如果不够三位要补0,具体见下表:

二进制八进制
00000
00011
00102
00113
01004
01015
01106
01117

八进制转二进制同理: 

十六进制转二进制和八进制差不多,只不过十六进制是位二进制=一位十六进制

四位二进制  = 一位十六进制,具体见下表:

二进制十六进制
00000
00011
00102
00113
01004
01015
01106
01117
10008
10019
1010A
1011B
1100C
1101D
1110E
1111F

作者10岁的小Tyler

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值