小学
作文
作文
字数
高中
作文
当前位置: 首页 > 作文素材 > > 二进制转十进制

二进制转十进制

发布时间:2018-08-18 06:00:02    来源:精华作文网    访问:

【www.jljhlq.com--作文素材】

二进制转十进制篇一:二进制转十进制,十进制转二进制的算法(求助)麻烦给出算法,谢谢.(麻烦尽量详细些)最好给个相关的URL.也可以发到我邮箱:uooyoo@126.com

十进制转二进制:用2辗转相除至结果为1 将余数和最后的1从下向上倒序写 就是结果例如302302/2 = 151 余0 151/2 = 75 余1 75/2 = 37 余1 37/2 = 18 余1 18/2 = 9 余0 9/2 = 4 余1 4/2 = 2 余0 2/2 = 1 余0 故二进制为100101110 二进制转十进制从最后一位开始算,依次列为第0、1、2...位第n位的数(0或1)乘以2的n次方得到的结果相加就是答案例如:01101011.转十进制:第0位:1乘2的0次方=1 1乘2的1次方=2 0乘2的2次方=0 1乘2的3次方=8 0乘2的4次方=0 1乘2的5次方=32 1乘2的6次方=64 0乘2的7次方=0 然后:1+2+0 +8+0+32+64+0=107. 二进制01101011=十进制107.

二进制转十进制篇二:二进制的加法和乘法运算规则是什么?

二进制转十进制_二进制的加法和乘法运算规则是什么?

二进制乘法和加法都是通过对二进制数的移位来实现的,移位相当于×2,计算机算根据给出的加法式子与乘法式子算要移多少位.扩展:1、二进制数据的表示法  二进制数据也是采用位置计数法,其位权是以2为底的幂.例如二进制数据110.11,其权的大小顺序为2^2、2^1、2^0、2^-1、2^-2.对于有n位整数,m位小数的二进制数据用加权系数展开式表示,可写为:  (a(n-1)a(n-2)…a(-m))2=a(n-1)×2^(n-1)+a(n-2)×2^(n-2)+……+a(1)×2^1+a(0)×2^0+a(-1)×2^(-1)+a(-2)×2^(-2)+……+a(-m)×2^(-m)  二进制数据一般可写为:(a(n-1)a(n-2)…a(1)a(0).a(-1)a(-2)…a(-m))2.  注意:  1.式中aj表示第j位的系数,它为0和1中的某一个数.  2.a(n-1)中的(n-1)为下标,输入法无法打出所以用括号括住,避免混淆.  3.2^2表示2的平方,以此类推.  【例1102】将二进制数据111.01写成加权系数的形式.  (111.01)2=(1×2^2)+(1×2^1)+(1×2^0)+(0×2^-1)+(1×2^-2)  二进制和十六进制,八进制一样,都以二的幂来进位的.  二进制数据的算术运算的基本规律和十进制数的运算十分相似.最常用的是加法运算和乘法运算.  1. 二进制加法   有四种情况: 0+0=0  0+1=1  1+0=1   1+1=10 进位为1  【例1103】求 (1101)2+(1011)2 的和    1 1 0 1  + 1 0 1 1  -------------------  1 1 0 0 0  2. 二进制乘法  有四种情况: 0×0=0  1×0=0  0×1=0  1×1=1  【例1104】求 (1110)2 乘(101)2 之积     1 1 1 0  ×  1 0 1  -----------------------   1 1 1 0   0 0 0 0  1 1 1 0   -------------------------  1 0 0 0 1 1 0   (这些计算就跟十进制的加或者乘法相同,只是进位的数不一样而已,十进制的是到十才进位这里是到2就进了)  3.二进制减法  0-0=0,1-0=1,1-1=0,10-1=1.  4.二进制除法  0÷1=0,1÷1=1.[1][2]  5.二进制拈加法  拈加法二进制加减乘除外的一种特殊算法.  拈加法运算与进行加法类似,但不需要做进位.此算法在博弈论(Game Theory)中被广泛利用.  十进制数转换为二进制数、八进制数、十六进制数的方法:  二进制数、八进制数、十六进制数转换为十进制数的方法:按权展开求和法  1.二进制与十进制间的相互转换:  (1)二进制转十进制  方法:“按权展开求和”  例: (1011.01)2 =(1×2^3+0×2^2+1×2^1+1×2^0+0×2^(-1)+1×2^(-2) )10  =(8+0+2+1+0+0.25)10  =(11.25)10  规律:个位上的数字的次数是0,十位上的数字的次数是1,.,依奖递增,而十  分位的数字的次数是-1,百分位上数字的次数是-2,.,依次递减.  注意:不是任何一个十进制小数都能转换成有限位的二进制数.  (2)十进制转二进制  · 十进制整数转二进制数:“除以2取余,逆序排列”(除二取余法)  例: (89)10 =(1011001)2  2 89 ……1  2 44 ……0  2 22 ……0  2 11 ……1  2 5 ……1  2 2 ……0  1   · 十进制小数转二进制数:“乘以2取整,顺序排列”(乘2取整法)  例: (0.625)10= (0.101)2  0.625X2=1.25 ……1  0.25 X2=0.50 ……0  0.50 X2=1.00 ……1  2.八进制与二进制的转换:  二进制数转换成八进制数:从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足3位的要用“0”补足3位,就得到一个八进制数.  八进制数转换成二进制数:把每一个八进制数转换成3位的二进制数,就得到一个二进制数.  八进制数字与二进制数字对应关系如下:  000 -> 0 100 -> 4   001 -> 1 101 -> 5   010 -> 2 110 -> 6   011 -> 3 111 -> 7  例:将八进制的37.416转换成二进制数:  3 7 . 4 1 6  011 111 .100 001 110  即:(37.416)8 =(11111.10000111)2   例:将二进制的10110.0011 转换成八进制:  0 1 0 1 1 0 . 0 0 1 1 0 0   2 6 . 1 4   即:(10110.011)2 = (26.14)8  3.十六进制与二进制的转换:  二进制数转换成十六进制数:从小数点开始,整数部分向左、小数部分向右,每4位为一组用一位十六进制数的数字表示,不足4位的要用“0”补足4位,就得到一个十六进制数.  十六进制数转换成二进制数:把每一个十六进制数转换成4位的二进制数,就得到一个二进制数.  十六进制数字与二进制数字的对应关系如下:  0000 -> 0 0100 -> 4 1000 -> 8 1100 -> C  0001 -> 1 0101 -> 5 1001 -> 9 1101 -> D   0010 -> 2 0110 -> 6 1010 -> A 1110 -> E  0011 -> 3 0111 -> 7 1011 -> B 1111 -> F  例:将十六进制数5DF.9 转换成二进制:  5 D F . 9  0101 1101 1111 .1001  即:(5DF.9)16 =(10111011111.1001)2   例:将二进制数1100001.111 转换成十六进制:  0110 0001 . 1110  6 1 . E  即:(1100001.111)2 =(61.E)16

二进制转十进制篇三:请问二进制、十六进制、八进制以及十进制之间如何进行转换?最好举几个例子,

二进制转十进制_请问二进制、十六进制、八进制以及十进制之间如何进行转换?最好举几个例子,

二进制,八进制,十进制,十六进制之间的转换算法 一、 十进制与二进制之间的转换 (1) 十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数.下面举例: 例:将十进制的168转换为二进制 得出结果 将十进制的168转换为二进制,(10101000)2 分析:第一步,将168除以2,商84,余数为0. 第二步,将商84除以2,商42余数为0. 第三步,将商42除以2,商21余数为0. 第四步,将商21除以2,商10余数为1. 第五步,将商10除以2,商5余数为0. 第六步,将商5除以2,商2余数为1. 第七步,将商2除以2,商1余数为0. 第八步,将商1除以2,商0余数为1. 第九步,读数,因为最后一位是经过多次除以2才得到的,因此它是最高位,读数字从最后的余数向前读,即10101000 (2) 小数部分 方法:乘2取整法,即将小数部分乘以2,然后取整数部分,剩下的小数部分继续乘以2,然后取整数部分,剩下的小数部分又乘以2,一直取到小数部分 为零为止.如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时,就根据后面一位是0还是1,取舍,如果是零,舍掉,如果是1,向入一位.换句话说就是0舍1入.读数要从前面的整数读到后面的整数,下面举例: 例1:将0.125换算为二进制 得出结果:将0.125换算为二进制(0.001)2 分析:第一步,将0.125乘以2,得0.25,则整数部分为0,小数部分为0.25; 第二步, 将小数部分0.25乘以2,得0.5,则整数部分为0,小数部分为0.5; 第三步, 将小数部分0.5乘以2,得1.0,则整数部分为1,小数部分为0.0; 第四步,读数,从第一位读起,读到最后一位,即为0.001. 例2,将0.45转换为二进制(保留到小数点第四位) 大家从上面步骤可以看出,当第五次做乘法时候,得到的结果是0.4,那么小数部分继续乘以2,得0.8,0.8又乘以2的,到1.6这样一直乘下去,最后不可能得到小数部分为零,因此,这个时候只好学习十进制的方法进行四舍五入了,但是二进制只有0和1两个,于是就出现0舍1入.这个也是计算机在转换中会产生误差,但是由于保留位数很多,精度很高,所以可以忽略不计. 那么,我们可以得出结果将0.45转换为二进制约等于0.0111 上面介绍的方法是十进制转换为为二进制的方法,需要大家注意的是: 1) 十进制转换为二进制,需要分成整数和小数两个部分分别转换 2) 当转换整数时,用的除2取余法,而转换小数时候,用的是乘2取整法 3) 注意他们的读数方向 因此,我们从上面的方法,我们可以得出十进制数168.125转换为二进制为10101000.001,或者十进制数转换为二进制数约等于10101000.0111. (3) 二进制转换为十进制 不分整数和小数部分 方法:按权相加法,即将二进制每位上的数乘以权,然后相加之和即是十进制数.例 将二进制数101.101转换为十进制数. 得出结果:(101.101)2=(5.625)10 大家在做二进制转换成十进制需要注意的是 1) 要知道二进制每位的权值 2) 要能求出每位的值 二、 二进制与八进制之间的转换 首先,我们需要了解一个数学关系,即23=8,24=16,而八进制和十六进制是用这 关系衍生而来的,即用三位二进制表示一位八进制,用四位二进制表示一位十六进制数. 接着,记住4个数字8、4、2、1(23=8、22=4、21=2、20=1).现在我们来练习二进制与八进制之间的转换. (1) 二进制转换为八进制 方法:取三合一法,即从二进制的小数点为分界点,向左(向右)每三位取成一位,接着将这三位二进制按权相加,得到的数就是一位八位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的八进制数.如果向左(向右)取三位后,取到最高(最低)位时候,如果无法凑足三位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足三位.例 ①将二进制数101110.101转换为八进制 得到结果:将101110.101转换为八进制为56.5 ② 将二进制数1101.1转换为八进制 得到结果:将1101.1转换为八进制为15.4 (2) 将八进制转换为二进制 方法:取一分三法,即将一位八进制数分解成三位二进制数,用三位二进制按权相加去凑这位八进制数,小数点位置照旧.例: ① 将八进制数67.54转换为二进制 因此,将八进制数67.54转换为二进制数为110111.101100,即110111.1011 大家从上面这道题可以看出,计算八进制转换为二进制 首先,将八进制按照从左到右,每位展开为三位,小数点位置不变 然后,按每位展开为22,21,20(即4、2、1)三位去做凑数,即a×22+ b×21 +c×20=该位上的数(a=1或者a=0,b=1或者b=0,c=1或者c=0),将abc排列就是该位的二进制数 接着,将每位上转换成二进制数按顺序排列 最后,就得到了八进制转换成二进制的数字. 以上的方法就是二进制与八进制的互换,大家在做题的时候需要注意的是 1) 他们之间的互换是以一位与三位转换,这个有别于二进制与十进制转换 2) 大家在做添0和去0的时候要注意,是在小数点最左边或者小数点的最右边(即整数的最高位和小数的最低位)才能添0或者去0,否则将产生错误 三、 二进制与十六进制的转换 方法:与二进制与八进制转换相似,只不过是一位(十六)与四位(二进制)的转换,下面具体讲解 (1) 二进制转换为十六进制 方法:取四合一法,即从二进制的小数点为分界点,向左(向右)每四位取成一位,接着将这四位二进制按权相加,得到的数就是一位十六位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的十六进制数.如果向左(向右)取四位后,取到最高(最低)位时候,如果无法凑足四位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足四位. ①例:将二进制11101001.1011转换为十六进制 得到结果:将二进制11101001.1011转换为十六进制为E9.B ② 例:将101011.101转换为十六进制 因此得到结果:将二进制101011.101转换为十六进制为2B.A (2)将十六进制转换为二进制 方法:取一分四法,即将一位十六进制数分解成四位二进制数,用四位二进制按权相加去凑这位十六进制数,小数点位置照旧. ①将十六进制6E.2转换为二进制数 因此得到结果:将十六进制6E.2转换为二进制为01101110.0010即110110.001 四、八进制与十六进制的转换 方法:一般不能互相直接转换,一般是将八进制(或十六进制)转换为二进制,然后再将二进制转换为十六进制(或八进制),小数点位置不变.那么相应的转换请参照上面二进制与八进制的转换和二进制与十六进制的转 五、八进制与十进制的转换 (1)八进制转换为十进制 方法:按权相加法,即将八进制每位上的数乘以位权,然后相加之和即是十进制数. 例:①将八进制数67.35转换为十进制 (2)十进制转换为八进制 十进制转换成八进制有两种方法: 1)间接法:先将十进制转换成二进制,然后将二进制又转换成八进制 2)直接法:前面我们讲过,八进制是由二进制衍生而来的,因此我们可以采用与十进制转换为二进制相类似的方法,还是整数部分的转换和小数部分的转换,下面来具体讲解一下: ①整数部分 方法:除8取余法,即每次将整数部分除以8,余数为该位权上的数,而商继续除以8,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数起,一直到最前面的一个余数. ②小数部分 方法:乘8取整法,即将小数部分乘以8,然后取整数部分,剩下的小数部分继续乘以8,然后取整数部分,剩下的小数部分又乘以8,一直取到小数部分为零为止.如果永远不能为零,就同十进制数的四舍五入一样,暂取个名字叫3舍4入. 例:将十进制数796.703125转换为八进制数 先将这个数字分为整数部分796和小数部分0.703125 整数部分 小数部分 因此,得到结果十进制796.703125转换八进制为1434.55 上面的方法大家可以验证一下,你可以先将十进制转换,然后在转换为八进制,这样看得到的结果是否一样 六、十六进制与十进制的转换 十六进制与八进制有很多相似之处,大家可以参照上面八进制与十进制的转换自己试试这两个进制之间的转换.

本文来源:http://www.jljhlq.com/z58687/