二进制、十进制、十六进制的互转简便算法
二进制,八进制,十进制,十六进制之间的相互转换和相关概念

二进制,八进制,十进制,十六进制之间的相互转换和相关概念二进制:计算机只认识0或1,也就是高电平和低电平.所以所有的数据格式最终会转化为2进制形式,计算机硬件才能识别。
二进制逢二进一,八进制逢八进一,十进制逢十进一,十六进制逢十六进一。
下边是各进制之间的转换公式.二进制转十进制0110 0100(2) 换算成十进制第0位0 * 2^0 = 0第1位0 * 2^1 = 0第2位 1 * 2^2 = 4第3位0 * 2^3 = 0第4位0 * 2^4 = 0第5位 1 * 2^5 = 32第6位 1 * 2^6 = 64第7位0 * 2^7 = 0 +---------------------------100二进制转八进制可采用8421法1010011(2)首先每三位分割即: 001,010,011不足三位采用0补位.然后采用8421法: 001=1010=2011=3所以转换成8进制是123二进制转十六进制1101011010100(2)首先每四位分割即: 0001,1010,1101,0100不足四位采用0补位.然后采用8421法: 0001:11010:A1101:D0100:4所以转换成十六进制是1AD4十六进制当数字超过9后将采用A代替10,B代替11,C代替12,D代替13,E代替14,F代替15;下边是十进制的各种转换:十进制转二进制6(10)10进制数转换成二进制数,这是一个连续除2的过程:把要转换的数,除以2,得到商和余数,将商继续除以2,直到商为0。
最后将所有余数倒序排列,得到数就是转换结果。
商余数6/2 3 03/2 1 11/2 0 1最后把余数从下向上排列写出110即是转换后的二进制.十进制转换八进制10进制数转换成八进制数,这是一个连续除8的过程:把要转换的数,除以8,得到商和余数,将商继续除以8,直到商为0。
最后将所有余数倒序排列,得到数就是转换结果。
120(10)商余数120/8 15 015/8 1 71/8 0 1最后把余数从下向上排列写出170即是转换后的八进制.十进制转换十六进制10进制数转换成十六进制数,这是一个连续除16的过程:把要转换的数,除以16,得到商和余数,将商继续除以16,直到商为0。
二进制_十进制_十六进制简单算法

二进制,十六进制,十进制,八进制1.二进制转十进制,111 第一位的1 他就是一个1 不用管他,好,上一位,这位的1就要乘2了,因为是二进制,除了个位数,上位的都是乘着2上去的。
那就是1+1*2+1*2*2=7好比十进制的523 ,个位3不管,2这一位就要乘以10了(后几位就算是0也要乘,乘完以后还是0),5这一位又要乘以10,就是3+2*10+5*10*10=523。
2.二进制转十六进制,这个就是一个半字节(也就是4位)的二进制就是一个十六进制的数而已。
其它的跟二进制转十进制一样。
如11011 4位分开,0001 1011,0001 十六进制额他就是1了,1011 十进制是11 十六进制的B,结果1B ,还好不是2B。
这两个4位是互不影响的,得出数拼到一起OK.3.十进制转二进制,这个其实围绕核心有两种计算方法。
一种就是除法,除于2除于2 的那种,跟二进制转十进制反过来了。
如55 除 2 得27 余1 ,1就是个位了,没有余的话那就是0了,27除2 得13 余1,13除2 得6 余1 ,6除2得3余0,3除2 得1 余1 ,结果110111.第二种是一种减法,128 64 32 16 8 4 2 110000000 1000000 100000 10000 1000 100 10 1这几个数字是二进制8位,也就是一个字节,每一位对应十进制的数字。
如,55 看好位置,比32大64小,二进制最高位在32那边了,55-32=23 好100000 有了,23-16=7 10000 有了,下面很明显8不够,跳过,7-4=3 100 ,3-2=1 10 ,1 那就是1了,不用减了正好一个1。
100000+10000+100+10+1=110111。
下面就自己练练吧,熟能生巧。
4.十进制转十六进制,这个跟十进制转二进制差不多,用除的那种。
如,653 除16 得40 余13 13也就是D ,第一位是个位的D。
二进制八进制十进制十六进制之间的进制转换

二进制八进制十进制十六进制之间的进制转换详情可参考百度百科:进制转换这个词条【主要搞懂1和2两条,其他的进制之间的转化就迎刃而解,很好懂了】1. 十进制-> 二进制:将这个十进制数连续除以2的过程,第一步除以2,得到商和余数,将商再继续除以2,得到又一个商和余数,直到商为0。
最后将所有余数倒序排列,得到的数就是转换成二进制的结果。
2. 二进制-> 十进制:二进制数第1位的权值是2的0次方,第2位的权值是2的1次方,第3位的权值是2的2次方。
(例如1258这个十进制数,实际上代表的是:1x1000+2x100+5x10+8x1=1258)那么1011这个二进制数,实际上代表的是:1x8+0x4+1x2+1x1=11(十进制数11)。
(这里的8就是2的3次方,4就是2的2次方,2就是2的1次方,1就是2的0次方)3. 十进制-> 八进制:十进制数转换成八进制的方法,和转换为二进制的方法类似,唯一变化:除数由2变成8。
4. 八进制-> 十进制和转换为二进制的方法类似,唯一变化是,底数变成8,第1位表示8的0次方,第二位表示8的一次方,第三位表示8的2次方,第四位表示8的3次方。
例如1314这个八进制数,十进制数就是1x512+3x64+1x8+4x1=716(十进制)5. 十进制-> 十六进制10进制数转换成16进制的方法,和转换为2进制的方法类似,唯一变化:除数由2变成16。
十六进制是0123456789ABCDEF这十六个字符表示。
那么单独一个A就是10,单独一个B就是11,CDEF,就分表表示12,13,14,15。
而10这个十六进制数,实际就是十进制中的16。
6. 十六进制-> 十进制和转换为二进制的方法类似,唯一变化是,底数变成16,第1位表示16的0次方,第二位表示16的一次方,第三位表示16的2次方,第四位表示16的3次方。
7. 二进制<--->八进制,之间的相互转换,更简单一些,因为8本身是2的三次方。
二进制十进制十六进制的互转简便算法

二进制、十进制、十六进制的互转简便算法
每个字节8位表示,字节(byte),半字节(nibble)4位表示。
对照如下二进制转换为十进制,举一反三:
学习IP地址子网划分,应牢记下表:
十进制转化为二进制,可用除余法,比如:
数47,用2不断除,整除写0,余1写1,分别为,23余1写1、11余1写1,5余1写1、2余1写1,整除写0、1余1写1。
所以答案为:00101111
十六进制转换为二进制或者十进制:
在转换过程中读取半字节而不是字节,十六进制的寻址方案只使用0~9得数字,大于10 的数由字母(A、B、C、D、E、F)来表示10、11、12、13、14、15。
cisco中习惯在十六进制前加(0x)如:0x5D。
0x在这里的意义是说明后面的是十六进制。
下面写出两个十六进制转化二进制的例子,可举一反三:
下面再写出两个十六进制转换为十进制的例子,可举一反三:
二进制转化为十六进制也是一样,讲8位一字节拆成2个半字节,对应十六进制表示方式合并即可。
然后再用转化出的二进制可轻松的得到十进制。
二进制十进制十六进制的互转简便算法

二进制十进制十六进制的互转简便算法一、二进制转十进制二进制是由0和1组成的数制系统,而十进制是由0到9组成的数制系统。
要将二进制转换为十进制,可以使用如下算法:1.将二进制数字从右到左依次编号,最右边的数字编号为0,次右边的数字编号为1,以此类推。
2.对于每个数字,将其与2的幂相乘,并将结果相加。
具体计算公式为:结果=第0位数字*2^0+第1位数字*2^1+第2位数字*2^2+...+第n位数字*2^n。
其中n为二进制数字的位数。
例如,要将二进制数1101转换为十进制,可以按照以下步骤进行计算:结果=1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8=13因此,二进制数1101转换为十进制数13二、十进制转二进制要将十进制转换为二进制,可以使用如下算法:1.将十进制数除以2,将商和余数记录下来。
2.继续对商除以2,将新的商和余数记录下来。
3.重复上述步骤,直到商为0为止。
4.将记录下来的余数按照记下来的顺序从后往前排列,即得到二进制表示。
例如,要将十进制数26转换为二进制,可以按照以下步骤进行计算:26÷2=13余013÷2=6余16÷2=3余03÷2=1余11÷2=0余1三、二进制与十六进制之间转换二进制和十六进制都是基于2的幂次方的数制系统,因此它们之间有一种简便的转换方法。
1.将二进制数按照4位一组进行分组。
如果二进制数的位数不能被4整除,可以在原数的左边补0,使得位数能够被4整除。
2.将每一组二进制数字转换为相应的十六进制数值。
0-9直接对应0-9,而10-15则对应A-F。
将二进制数按4位一组进行分组得到:001011011100将每一组二进制数字转换为相应的十六进制数值得到:2DC反之,要将十六进制数2DC转换为二进制,可以按照以下步骤进行计算:将十六进制数中的每一位转换为相应的4位二进制数值得到:001011011100总结本文介绍了一些简便的算法,可以帮助您在二进制、十进制和十六进制之间进行转换。
计算机四种进制间的相互转化

二进制,八进制,十进制,十六进制之间的相互转化1.转换为十进制二进制化为十进制例:将二进制数101.01转换成十进制数(101.01)2 = 1×22 + 0×21 + 1×20 + 0×2-1 + 1×2-2 = (5.25)10 八进制化为十进制例:将八进制数12.6转换成十进制数(12.6)8 = 1×81 + 2×80 + 6×8-1 = (10.75)10十六化为十进制例:将十六进制数2AB.6转换成十进制数:(2AB.6)16 = 2×162 + 10×161 + 11×160 + 6×16-1 = (683.375)102.转换为二进制八进制化为二进制规则:按照顺序,每1位八进制数改写成等值的3位二进制数,次序不变。
例:(17.36)8 = (001 111 .011 110)2 = (1111.01111)2十六进制化为二进制规则:每1位十六进制数改写成等值的4位二进制数,次序不变。
例:(3A8C.D6)16 =(0011 1010 1000 1100.1101 0110)2 =(11101010001100.1101011)2十进制整数化为二进制整数规则:除二取余,直到商为零为止,倒排。
例:将十进制数86转化为二进制2 | 86 02 | 43 (1)2 | 21 (1)2 | 10 02 | 5 (1)2 | 2 02 | 1 (1)结果:(86)10 = (1010110)2十进制小数化为二进制小数规则:乘二取整,直到小数部分为零或给定的精度为止,顺排。
例:将十进制数0.875转化为二进制数0.875× 21.75× 21.5×21.0结果:(0.875)10 = (0.111)23.转换为八进制二进制化为八进制整数部份从最低有效位开始,以3位一组,最高有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换完毕就是八进制的整数。
各进制之间的转换方法

各进制之间的转换方法
以下是各进制之间的转换方法:
1. 二进制与十进制的转换:
- 二进制转十进制:将二进制数每位的值与对应的权值相乘,然后将乘积相加。
- 十进制转二进制:将十进制数不断除以2,得到的商和余数反向排列即为二进制数。
2. 二进制与十六进制的转换:
- 二进制转十六进制:将二进制数每4位一组,然后将每组的值转换为对应的十六进制数。
- 十六进制转二进制:将每位的十六进制数转换为4位的二进制数。
3. 十进制与十六进制的转换:
- 十进制转十六进制:将十进制数不断除以16,得到的商和余数反向排列,余数可以是0-9的数字或A-F的十六进制数字。
- 十六进制转十进制:将每位的十六进制数转换为对应的十进制数,然后将它们相加。
4. 八进制与十进制的转换:
- 八进制转十进制:将八进制数每位的值与对应的权值相乘,然后将乘积相
加。
- 十进制转八进制:将十进制数不断除以8,得到的商和余数反向排列即为八进制数。
5. 八进制与二进制的转换:
- 八进制转二进制:将八进制数中的每个数位分别转换为对应的3位二进制数。
- 二进制转八进制:将二进制数每3位一组,然后将每组的值转换为对应的八进制数。
这些转换方法可以通过手工计算或使用计算机程序来进行。
二进制_八进制_十进制_十六进制之间的相互转换

二进制,八进制,十进制,十六进制之间的相互转换和相关概念二进制:计算机只认识0或1,也就是高电平和低电平.所以所有的数据格式最终会转化为2进制形式,计算机硬件才能识别。
二进制逢二进一,八进制逢八进一,十进制逢十进一,十六进制逢十六进一。
下边是各进制之间的转换公式.二进制转十进制0110 0100(2) 换算成十进制第0位0 * 2^0 = 0第1位0 * 2^1 = 0第2位1 * 2^2 = 4第3位0 * 2^3 = 0第4位0 * 2^4 = 0第5位1 * 2^5 = 32第6位1 * 2^6 = 64第7位0 * 2^7 = 0 +---------------------------100二进制转八进制可采用8421法1010011(2)首先每三位分割即: 001,010,011不足三位采用0补位.然后采用8421法: 001=1010=2011=3所以转换成8进制是123二进制转十六进制1101011010100(2)首先每四位分割即: 0001,1010,1101,0100不足四位采用0补位.然后采用8421法: 0001:11010:A1101:D0100:4所以转换成十六进制是1AD4十六进制当数字超过9后将采用A代替10,B代替11,C代替12,D代替13,E代替14,F代替15;下边是十进制的各种转换:十进制转二进制6(10)10进制数转换成二进制数,这是一个连续除2的过程:把要转换的数,除以2,得到商和余数,将商继续除以2,直到商为0。
最后将所有余数倒序排列,得到数就是转换结果。
商余数6/2 3 03/2 1 11/2 0 1最后把余数从下向上排列写出110即是转换后的二进制.十进制转换八进制10进制数转换成八进制数,这是一个连续除8的过程:把要转换的数,除以8,得到商和余数,将商继续除以8,直到商为0。
最后将所有余数倒序排列,得到数就是转换结果。
120(10)商余数120/8 15 015/8 1 71/8 0 1最后把余数从下向上排列写出170即是转换后的八进制.十进制转换十六进制10进制数转换成十六进制数,这是一个连续除16的过程:把要转换的数,除以16,得到商和余数,将商继续除以16,直到商为0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二进制、十进制、十六进制的互转简便算法
每个字节8位表示,字节(byte),半字节(nibble)4位表示。
对照如下二进制转换为十进制,举一反三:
学习IP地址子网划分,应牢记下表:
十进制转化为二进制,可用除余法,比如:
数47,用2不断除,整除写0,余1写1,分别为,23余1写1、11余1写1,5余1写1、2余1写1,整除写0、1余1写1。
所以答案为:00101111
十六进制转换为二进制或者十进制:
在转换过程中读取半字节而不是字节,十六进制的寻址方案只使用0~9得数字,大于10 的数由字母(A、B、C、D、E、F)来表示10、11、12、13、14、15。
cisco中习惯在十六进制前加(0x)如:0x5D。
0x在这里的意义是说明后面的是十六进制。
下面写出两个十六进制转化二进制的例子,可举一反三:
下面再写出两个十六进制转换为十进制的例子,可举一反三:
二进制转化为十六进制也是一样,讲8位一字节拆成2个半字节,对应十六进制表示方式合并即可。
然后再用转化出的二进制可轻松的得到十进制。