计算机进制之二进制、十进制、十六进制之间的转换

   1、计算机的数制介绍

数制:计数的方法,指用一组固定的符号和统一的规则来表示数值的方法

数位:指数字符号在一个数中所处的位置

基数:指在某种进位计数制中,数位上所能使用的数字符号的个数

位权:指在某种进位计数制中,数位所代表的大小,即处在某一位上的“1”所表示的数值的大小。

2、数制的表示方法

3、数制的计算

4、进制之间的转换

4.1、正整数的十进制转换二进制

将一个十进制数除以二,得到的商再除以二,依此类推直到商等于一或零时为止,倒取除得的余数,即换算为二进制数的结果。只需记住要点:除二取余,倒序排列。

由于计算机内部表示数的字节单位都是定长的,以2的幂次展开,或者8位,或者16位,或者32位....。于是,一个二进制数用计算机表示时,位数不足2的幂次时,高位上要补足若干个0。本文都以8位为例。

4.2、二进制转换为十进制

计算机进制之二进制、十进制、十六进制之间的转换

二进制转十进制的转换原理:从二进制的右边第一个数开始,每一个乘以2的n次方,n从0开始,每次递增1。然后得出来的每个数相加即是十进制数。

4.3、十进制转换为十六进制

4.4、十六进制转换为十进制

16转10

16进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……

所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。

例:2AF5换算成10进制:

用竖式计算:

第0位: 5 * 16^0 = 5

第1位: F * 16^1 = 240

第2位: A * 16^2= 2560

第3位: 2 * 16^3 = 8192

-------------------------------------

10997

直接计算就是:

5 * 16^0 + F * 16^1 + A * 16^2 + 2 * 16^3 = 10997

4.5、二进制转十六进制

2转16

16进制就有16个数,0~15,用二进制表示15的方法就是1111,从而可以推断出,16进制用2进制可以表现成0000~1111,顾名思义,也就是每四个为一位。举例:

00111101可以这样分:

0011|1101(最高位不够可用零代替),对照着二进制的表格,1024 512 256 128 64 32 16 8 4 2 1 (一般例举这么多就够了,如果有小数的话就继续往右边列举,如0.5 0.25 0.125 0.0625……)

1024 512 256 128 64 32 16 8 4 2 1

0 0 1 1| 1 1 0 1

左半边=2+1=3 右半边=8+4+1=13=D

结果,0111101就可以换算成16进制的3D。

4.6、十六进制转二进制

16进制到二进制

由于在二进制的表示方法中,每四位所表示的数的最大值对应16进制的15,即16进制每一位上最大值,所以,我们可以得出简便的转换方法,将16进制上每一位分别对应二进制上四位进行转换,即得所求:

例:2AF5换算成2进制:

第0位: (5)16 = (0101) 2

第1位: (F)16 = (1111) 2

第2位: (A) 16 = (1010) 2

第3位: (2) 16 = (0010) 2

-------------------------------------

得:(2AF5)16=(0010.1010.1111.0101)2

「点点赞赏,手留余香」

还没有人赞赏,快来当第一个赞赏的人吧!