计算机中十进制转换为二进制的另一方法

计算机中十进制转换为二进制的另一方法

“定位减权法”要求学者首先要熟悉 2 ~ 210 对应的十进制数值。 
   
  显而易见,对 2N对应的十进制数记得越多,则用“定位减权法”处理的十进制 数据就会越大,但是 20~ 210

对应的十进制数值是基本要求。 
  记住了上述的数值后,我们就可以对任何一个十进制数值轻松的转换为二进制数值,其操作方法是: 
  1.根据给出的十进制数(记为D)确定其对应的范围,从而确定其对应的二进制数(记为B)的最高位的权2N,进而对所给的十进制数值转换为对应的二进制数值进行“定位”。 
  2.根据得到的二进制数值的最高位的权 2N,将二进制的权从高到低排列,直到 2。 
  3.将给出的十进制数D按对应的二进制数的最高位权 2N开始,由高到低依次记为对应的系数,从而对所给的十进制数值转换为对应的二进制数值进行“减权”求值,以便得到最终的二进制数值。 
  求取对应的系数方法为:对“定位”得到的二进制数值的最高位权 2N,先将其对应的系数记为1。然后将给出的十进制数值D减去 2N所对应的十进制数值,查看其结果,并判断其是否大于或等于 2N -1:如果是,则将 2N -1对应的系数记为1;如果不是,则将 2N -1对应的系数记为0,同时考虑下一个位权 2N -1。按这样的方法从高到低查看每一位二进制数的位权,并对其积上系数,直到位权为 20时结束。 
  下面举例说明“定位减权法”的使用。例如,我们需要将十进制数100转换为对应的二进制数值,按“定位减权法”其操作方法如下: 
  1.确定100介于128和64之间,也就是介于27和26之间。因为100不足128,即不足27,但100已经大于64,即大于26,因此其对应的二进制数的最高位的权为,从而可以确定十进制数值100对应的二进制数值应该具有“7”位。 
  2.根据步骤1得知十进制数100对应的二进制数的最高位权为26,则十进制数100对应的二进制的位权由高到低的排列为: 
                 2           25             24           23             22            2         20
  3.对于步骤2给出的位权序列,首先对26对应的系数记为1,也就是对最高位的位权记为1;然后将100-64得到36,25对应的十进制数值为32,36大于32,因此对25对应的系数记为1;按此方法,36-32得4,24、23对应的十进制数分别是16、8,都大于4,因此其对应的系数记为0;22对应的十进制是4,等于得到的差的结果4,因此其对应的系数记为1;4-4得0,即21、20所对应的十进制数分别是2、1,都大于0,因此其对应的系数记为0。就此,就已经把十进制数100转换成二进制1100100。 
    2           25             24           23             22            2         20
     .        .        .       .         .        .      .

     .        .        .       .         .        .      .

     .        .        .       .         .        .      .

     1        1        0       0         1         0      0


  综上所述,我们利用“定位减权法”完成了十进制对二进制的转换,通过上面的实例我们看出,这样的方法对于实现十进制对二进制的转换非常方便,同时避免了传统的“除2取余、所得余数倒着写”容易出现错误的几率,对于帮助学者学习计算机,实现进制之间的相互转换有着重要的作用。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值