各进制原理

本文主要讲进制数之间的转换与原理

我们平时生活中的主要用到的是十进制数,计算机用的是二进制数,但你们知道什么是十进制数,什么是二进制数,还有其他的八进制数,十六进制数,他们之间又是怎么转换的呢?

首先我们来讲讲这些进制数都是由什么组成的

二进制:由 "0,1" 这两个数组成,如:101011;

八进制:由"0,1,2,3,4,5,6,7" 这八个数值组成,如:53;

十进制:由"0,1,2,3,4,5,6,7,8,9" 这十个数值组成,如:43;

十六进制:由"0,1,2,3,4,5,6,7,8,9,A(10),B(11),C(12),D(13),E(14),F(15)" 这十个数值组成,如:13;

进制之间的转换

二进制转换八进制,以二进制数:10101011 为例 

1)把二进制数分成每3个数值为一节(不足三个数,在左边补0),
 (此位置不足三个数所以补0)10 101 011
   010 101 011

2)把每三位的二进制数按权展开相加
    010                   101                   011
    (0*2² + 1*2¹ + 0*2º)  (1*2² + 0*2¹ + 1*2º)  (0*2² + 1*2¹ + 1*2º)
    (0 + 2 + 0)           (4 + 0 + 1)           (0 + 2 + 1)
    2                     5                     3


3)八进制为:253


八进制转二进制,以八进制数:253 为例

1)对每个八进制的数值通过除2逐级取余数,余数从右至左排放,余数不得三位时在左边补0得到二进制数
	2                           5                       3
	2/2得1,余0                 5/2得1,余1                3/2得1,余1
	1/2得0,余1                 2/2得1,余0                1/2得0,余1
	余数只得两位,左边补0        1/2得0,余1                余数只得两位,左边补0
	010                        101                      011
 
2)二进制数为 010 101 011,最左侧0可去掉,最终得值 10101011


二进制转换十进制,以二进制数:10101011 为例

1)二进制数按权展开相加即等于十进制数 如:1*2ⁿ………1*2³+0*2²+1*2¹+1*2º

得:10101011的十进制数为 171


十进制转换二进制,以十进制数:171 为例

1)对每个十进制的数值通过除2逐级取余数,余数从右至左排放

171/2 得85,余1
85/2 得42,余1
42/2 得21,余0
21/2 得10,余1
…………

得:171的二进制数为 10101011



二进制转换十六进制,以二进制数:10101011 为例 

1)把二进制数分成每四个数值为一节(不足四个数,在左边补0),
   1010 1011

2)把每四位的二进制数按权展开相加
    1010                            1011 
    (1*2³ + 0*2² + 1*2¹ + 0*2º)     (1*2³ + 0*2² + 1*2¹ + 1*2º)
    (8 + 0 + 2 + 0)                 (8 + 0 + 2 + 1)
    10(A)                           11(B)

3)十六进制为:AB


十六进制转二进制,以十六进制数:AB 为例

1)对每个十六进制的数值通过除2逐级取余数,余数从右至左排放,余数不得四位时在左边补0得到二进制数
	10(A)                      11(B)     
	10/2得5,余0                11/2得5,余1       
	5/2得2,余1                 5/2得2,余1      
	2/2得1,余0                 2/2得1,余0     
	1/2得0,余1                 1/2得0,余1          
	1010                       1011
 
 
2)二进制数为 10101011

猜你喜欢

转载自www.cnblogs.com/mehturt/p/10994192.html