“逢16进1”的进位制,一般用数字0到9和字母A到F(或a ~ f)表示,其中A ~ F表示10~15,这些称作十六进制数字。
16进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……
例:2AF5换算成十进制:
用竖式计算:
第 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
例:30换算成十六进制:
二进制是用0和1两个数码来表示的数字,它的基数为2,“逢二进一”的进位制,借位规则是“借一当二”。
计算机内部表示数的字节单位是定长的,如 1024 512 256 128 64 32 16 8 4 2 1 (如果有小数的话就继续往右边列举,如0.5 0.25 0.125 0.0625……),所以位数不够时, 高位补零,首位是0代表正整数,首位为1代表负整数。
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10
0 - 0 = 0
0 - 1 = 1
1 - 0 = 1
1 - 1 = 0
0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1
0 ÷ 1 = 1
1 ÷ 1 = 1
拈加法二进制是一种特殊算法,与加法类似,但不需要进位,此算法在博弈论(Game Theory)中被广泛利用。
例:42换算成二进制:
先将对应的正整数转换成二进制后,对二进制取反,然后对结果再加一
例:-42换算成二进制:
例:0.65 换算成二进制:
0.65 * 2 = 1.3 取 1,留下 0.3 继续乘2取整
0.3 * 2 = 0.6 取 0,留下 0.6 继续乘2取整
0.6 * 2 = 1.2 取 1,留下 0.2 继续乘2取整
0.2 * 2 = 0.4 取 0,留下 0.4 继续乘2取整
0.4 * 2 = 0.8 取 0,留下 0.8 继续乘2取整
0.8 * 2 = 1.6 取 1,留下 0.6 继续乘2取整
0.6 * 2 = 1.2 取 1,留下 0.2 继续乘2取整
……
一直循环,知道达到精度限制才停止(所以计算机保存的小数一般会有误差,所以在变成中,要想比较两个小数是否相等,只能比较某个精度范围内是否相等)
这时十进制的0.65,用二进制就可以表示为:0.1010011
例:1010换算成十进制:
先补齐位数:00001010(首位为0所以是正整数)
第 0 位: 0 * 2 0 = 0
第 1 位: 1 * 2 1 = 2
第 2 位: 0 * 2 2 = 0
第 3 位: 1 * 2 3 = 8
得:10
直接计算就是:
0 * 2 0 + 1 * 2 1 + 0 * 2 2 + 1 * 2 3 = 10
例:0.1101换算成十进制:
第 0 位: 0 * 2 0 = 0
第 -1 位: 1 * 2 -1 = 0.5
第 -2 位: 1 * 2 -2 = 0.25
第 -3 位: 0 * 2 -3 = 0
第 -4 位: 1 * 2 -4 = 0.625
得:0.8125
直接计算就是:
0 * 2 0 + 1 * 2 -1 + 1 * 2 -2 + 0 * 2 -3 + 1 * 2 -4 = 0.8125
例: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
00111101可以这样分:
0011 | 1101(最高位不够可用零代替)
0 0 1 1 | 1 1 0 1
左半边 = 2 + 1 = 3 右半边 = 8 + 4 + 1 = 13 = D
结果,0111101就可以换算成16进制的3D。
进制之间如何转换?
转化为十进制 11010(2)=1*24+1*23+0*22+1*21+0*20=26 转为八进制 100111=47(8)---分步计算 100=1*22+0*21+0*20=4 与 111=1*22+1*21+1*20=7 转为十六进制 10011100=9c(16)---分步计算 1001=1*2+0*2+1*2=9 与 1100=1*23+1*22+0*21+0*2...
进制之间怎么转换?
1、十进制转二进制:十进制数除2取余法,即十进制数除以2,余数为权位上的数,得到的商值继续除2,以此步骤直到商为0为止。2、二进制转十进制:把二进制数按权展开,相加即得十进制数。3、二进制转八进制:3位二进制数按权展开相加得到1位八进制数(注:3位二进制转成八进制是从右到左开始...
进制转换的方法
进制转换的方法包括以下几种:1、十进制到其他进制的转换:除基取余法,将十进制数不断除以要转换的进制,直到商为0,然后将每次的余数反向排列即可得到转换后的数。2、其他进制到十进制的转换:乘基加权法,将每一位上的数乘以对应位置的权值,然后将各个位上的乘积相加即可得到十进制数。3、二进制...
进制的转换方法
进制转换的方法是:二进制数,十六进制数可以采用按权展开法转化为十进制数,十进制转化为R进制要分为两部分,其中整数部分要除R取余,直到商为0,小数部分要乘R取余直到得到整数。1、二进制转换成十进制 任何一个二进制数的值都用它的按位权展开式表示。例如:将二进制数(10101.11)2转换成十进...
进制转换方法
1、八进制转二进制:八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零。2、二进制转八进制:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0)。三、二进制与十六进制之间的转换 1、十六进制转二...
进制间的相互转化是怎样的?比如八进制转换成二进制,十六进制转换成二进...
八进制转二进制,每一位八进制对应三位二进制。例,367,对应,011 110 111。十六进制转二进制,每一位十六进制对应四位二进制。例,AD,对应,1001 1101。十进制转二进制,十进制数除以2取余,直到余数为1,最后将相除后的余数倒序作为对应的二进制结果。例,15,对应,1111。
数字进制间的转换方法
数字进制间的转换方法有:1、二进制与十进制之间的转换:十进制转二进制:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。二进制转十进制:把二进制数按权展开、相加即得十进制数。2、二进制与八进制之间的转换:二进制转八进制:...
进制的转换(十进制与二、八、十六进制的互换和八、十六进制与二进制的...
举例:将二进制数1111转换为十进制。1 × 2^3 + 1 × 2^2 + 1 × 2^1 + 1 × 2^0 = 8 + 4 + 2 + 1 = 15 因此,二进制数1111等于十进制数15。相似地,八进制和十六进制数的转换遵循同样的原理,只是位权值不同。二、八、十六进制与二进制的互换 通过间接法或直接法进行转换。
进制之间的转换方法
进制之间的转换方法如下:1、十进制转二进制和十进制转八进制:将十进制数不断除以2,直到商为0,然后将每一步的余数倒序排列即可得到二进制表示。将十进制数不断除以8,直到商为0,然后将每一步的余数倒序排列即可得到八进制表示。2、十进制转十六进制和二进制转十进制:将十进制数不断除以16,...
进制间转换。
各种进制之间的转换方法:一、不同的进位制数转化为十进制数:按权展开相加 十进制是权是10;二进制是权是2;十六进制是权是16;八进制是权是8;例:110011(二进制数)=1*2^5+1*2^4+0*2^3+0*2^2+1*2^1+1*2^0=32+16+2+1=51 1507(八进制数)=1*8^3 + 5*8^2 + 0*8^1 ...