各进制原理
Posted mehturt
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了各进制原理相关的知识,希望对你有一定的参考价值。
本文主要讲进制数之间的转换与原理
我们平时生活中的主要用到的是十进制数,计算机用的是二进制数,但你们知道什么是十进制数,什么是二进制数,还有其他的八进制数,十六进制数,他们之间又是怎么转换的呢?
首先我们来讲讲这些进制数都是由什么组成的
二进制:由 "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
以上是关于各进制原理的主要内容,如果未能解决你的问题,请参考以下文章
Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段