进制转换
Posted thoughtful-actors
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进制转换相关的知识,希望对你有一定的参考价值。
一、概念
1、进制:
是人为的一种计数方法,一般以进制基数进行命名区分,例如常见的十进制就是逢十进一。
2、分类:
进制主要有二进制、四进制、七进制、八进制、十进制、十二进制、十六进制和六十进制等。
其中生活中最常用的是十进制,十二进制主要是用在时间计时和年份上,计算机识别的语言就是以二进制形式存在的数据。
3、基数、位权、系数
基数:即进位置制,命名规则也是依据基数命名,例如二进制就是逢二进一,基数为2。
系数:不同位权上的数字,例如十进制123,系数分别为1,2,3。
位权:即数制中某一固定位置对应的单位,例如十进制123,系数1的位权是100,系数2的位权是10,系数3的位权是1。
进制 | 基数 | 位权 | 系数 | 符号 |
十进制 | 10 | 10(0~n) | (0~9) | D |
二进制 | 2 | 2(0~n) | (0,1) | B |
八进制 | 8 | 8(0~n) | (0~7) | O |
十六进制 | 16 | 16(0~n) | (0~9,A~F) | H |
二、十进制转R进制
十进制转其他进制方法:按照除相应基数取余逆排法。
例如:十进制转二进制:(123)D=()B
计算过程:123/2=61 余1
61/2=30 余1
30/2=15 余0
15/2=7 余1
7/2=3 余1
3/2=1 余1
1/2=0 余1
然后把余数按照从下到上的顺序再从左到右排列
最后结果就是(123)D=(1111011)B
十进制转其他进制的方法都一样,只需要改变除数就行,转成八进制就除以8,转成十六进制就除以16。
三、R进制转十进制
其他进制转十进制方法:按权求和,即系数*位权展开求和
例如:二进制转十进制:(1111011)B=()D
计算过程:1*26+1*25+1*24+1*23+0*22+1*21+1*20=123
最后结果就是(1111011)B=(123)D
其他进制转十进制的方法都一样,只需要改变位权即幂运算的底数就行,幂运算的底数就是相应的基数,指数就是从左向右以0开始计位数。
四、二进制转八进制
二进制转八进制方法:从左到右每三位合一,遇到高位不够补0
例如:(1111011)B=()O
从左到右:1 111 011 = 001 111 011 =(1 7 3)O
最后结果为(1111011)B=(173)O
三位一组计算时就可以看成三个互不关联的二进制,然后分别转成相应的十进制数
五、二进制转十六进制
方法:从左到右每四位合一,遇到高位不够补0
例如:(1111011)B=()H
从左到右:111 1011 = 0111 1011 = (7 11)=(7B)H
最后结果为:(1111011)B=(7B)H
四一组计算时就可以看成四个互不关联的二进制,然后分别转成相应的十进制数
六、八进制转二进制
方法:从左到右每个系数都转成相应的二进制数,可以看成是一分三
例如:(173)O=()B
从左到右:1 7 3=1 111 011=(1111011)B
最后结果为:(173)O=(1111011)B
此过程可以看成是二进制转成八进制的逆运算,每位系数都按照十进制转二进制的规则转成相应的二进制,然后按照原来从左到右的顺序排列,最高位的0可以省略。
七、十六进制转二进制
方法:从左到右每个系数都转成相应的二进制数,可以看成是一分四
例如:(7B)H=()B
从左到右:7B=7 B= 7 11= 0111 1011=(1111011)B
最后结果为:(173)O=(1111011)B
此过程可以看成是二进制转成十六进制的逆运算,每位系数都按照十进制转二进制的规则转成相应的二进制,然后按照原来从左到右的顺序排列,最高位的0可以省去。
八、八进制与十六进制相互转换
两个进制之间的转换可以先转成二进制或者十进制,然后再转成相应的进制。
以上是关于进制转换的主要内容,如果未能解决你的问题,请参考以下文章