介绍
百度百科:进制也就是进位计数制,是人为定义的带进位的计数方法(有不带进位的计数方法,比如原始的结绳计数法,唱票时常用的“正”字计数法,以及类似的tally mark计数)。 对于任何一种进制—X进制,就表示每一位上的数运算时都是逢X进一位。 十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。
本文所用例子:101002 = 248 = 2010 = 1416
1. 二进制转其他进制
以2为基数的技术体称为二进制,用0、1表示,进位规则是逢2进1。
2进制转8进制: 三位0 /1为一组转换为一个八进制位
如:010 100=248
#先转十进制
t = int('10100', 2)
#再转八进制
n = oct(t)
2进制转10进制: 每个数码位置不同代表的数值不同
如:10100=1* 24+0* 23+1* 22+0* 21+0* 20=20
#二进制转十进制
t = int('10100', 2)
2进制转16进制: 四位0 /1为一组转换为一个八进制位
如:0001 0100=1416
#先转十进制
t = int('10100', 2)
#再转16进制
n = hex(t)
2. 八进制转其他进制
以8为基数的技术体称为八进制,用0~7表示,进位规则是逢8进1。
8进制转2进制: 一个八进制位转换为三位0 /1
如:2 4 = 010 100
#先转十进制
t = int('24', 8)
#再转二进制
n = bin(t)
8进制转10进制: 每个数码位置不同代表的数值不同
如:24=2* 81+4* 80 = 20
#8进制转10进制
n = int('24', 2)
8进制转16进制: 先将八进制转换为二进制或十进制,再转换为十六进制
如:24=010 1002 = 0001 01002 = 1416
#先转十进制
t = int('24', 8)
#再转十六进制
n = hex(t)
3. 十进制转其他进制
以10为基数的技术体称为二进制,用0~9表示,进位规则是逢10进1。
10进制转2进制: 除二取余倒序法,如:20=101002
20/2 = 10 …0
10/2 = 5 …0
5/2 = 2 …1
2/2=1 …0
1/2=0 …1
倒序:10100
#10进制转2进制
n = bin(20)
10进制转8进制: 除八取余倒序法,如:20=248
20/8 = 2 …4
2/8 = 0 …2
倒序:24
#10进制转8进制
n = oct(20)
10进制转16进制: 除十六取余法,如:20=1416
20/16 = 1 …4
1/16 = 0 …1
倒序:14
#10进制转16进制
n = hex(20)
4. 十六进制转其他进制
以16为基数的技术体称为二进制,用0~9、A ~F表示,其中A ~F分别表示
A: 10.
B: 11.
C: 12.
D: 13.
E: 14.
F: 15.
,进位规则是逢16进1。
16进制转2进制: 一个十六进制位转换为4位0 /1
如:1 4 = 0001 0100 = 101002
#先转十进制
t = int('14', 16)
#再转二进制
n = bin(t)
16进制转8进制: 先将十六进制转换为二进制或十进制,再转换为八进制
如:1 4 = 0001 0100=101002 = 010 100 = 248
#先转十进制
t = int('14', 16)
#再转八进制
n = oct(t)
16进制转10进制: 每个数码位置不同代表的数值不同
如:14=1* 161+4* 160 = 20
#16进制转10进制
n = int('14', 16)
总结
以上就是关于进制之间相互转换的具体说明与相关案例,希望对各位同学有所帮助,如果大家有相关问题,可以再评论区进行提问,我会在第一时间进行恢复,若有错误,欢迎指正!