1 / 12
文档名称:

二进制算法.doc

格式:doc   大小:60KB   页数:12页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

二进制算法.doc

上传人:yzhlya 2017/2/20 文件大小:60 KB

下载得到文件列表

二进制算法.doc

相关文档

文档介绍

文档介绍:二进制乘法和加法都是通过对二进制数的移位来实现的,移位相当于×2,计算机算根据给出的加法式子与乘法式子算要移多少位。扩展: 1、二进制数据的表示法二进制数据也是采用位置计数法,其位权是以 2为底的幂。例如二进制数据 ,其权的大小顺序为 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。注意: aj表示第 j位的系数,它为 0和 1中的某一个数。 (n-1) 中的(n-1) 为下标,输入法无法打出所以用括号括住,避免混淆。 ^2 表示 2的平方,以此类推。【例 1102 】将二进制数据 写成加权系数的形式。解:( )2= (1× 2^2)+(1 × 2^1)+(1 × 2^0)+(0 × 2^-1)+(1 × 2^-2) 二进制和十六进制,八进制一样,都以二的幂来进位的。二进制数据的算术运算的基本规律和十进制数的运算十分相似。最常用的是加法运算和乘法运算。 : 0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 10 进位为 1 【例 1103 】求(1101)2+(1011)2 的和解: 1101+1011 ------------------- 11000 : 0×0=0 1×0=00×1=01×1=1【例 1104 】求(1110)2 乘(101)2 之积解: 1110×101 ----------------------- 1********** ------------------------- 1000110(这些计算就跟十进制的加或者乘法相同,只是进位的数不一样而已,十进制的是到十才进位这里是到 2就进了) 0-0=0,1-0=1,1-1=0, 10 -1=1。 0÷1= 0, 1÷1= 1。[1][2] 。拈加法运算与进行加法类似,但不需要做进位。此算法在博弈论( Game Theory )中被广泛利用。十进制数转换为二进制数、八进制数、十六进制数的方法: 二进制数、八进制数、十六进制数转换为十进制数的方法:按权展开求和法 : ( 1)二进制转十进制方法: “按权展开求和”例: ( ) 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+ ) 10 =( ) 10 规律:个位上的数字的次数是 0,十位上的数字的次数是 1, ...... ,依奖递增,而十分位的数字的次数是-1,百分位上数字的次数是-2, ...... ,依次递减。注意:不是任何一个十进制小数都能转换成有限位的二进制数。(2)十进制转二进制·十进制整数转二进制数: “除以 2取余,逆序排列”(除二取余法) 例: ( 89 ) 10 =( 1011001 )2 2 89 …… 12 44 …… 02 22 …… 02 11 …… 125…… 1 22…… 01·十进制小数转二进制数: “乘以 2取整,顺序排列”(乘 2取整法) 例: (0. 625)10= (0. 101)2 = …… 1 X2= …… 0 X2= …… : 二进制数转换成八进制数:从小数点开始,整数部分向左、小数部分向右, 每3位为一组用一位八进制数的数字表示,不足 3位的要用“0”补足 3位,就得到一个八进制数。八进制数转换成二进制数:把每一个八进制数转换成 3位的二进制数,就得到一个二进制数。八进制数字与二进制数字对应关系如下: 000 ->0 100 ->4 001 ->1 101 ->5 010 ->2 110 ->6 011 ->3 111 ->7例:将八进制的 转换成二进制数: 37. 416 011 111 . 100 001 110 即:( ) 8=( ) 2 例:将二进制的 1011