黑马程序员技术交流社区

标题: 进制问题 [打印本页]

作者: hel    时间: 2013-11-6 01:12
标题: 进制问题
十进制转换成二进制
为什么要除以2,
说明原理,
作者: 王靖远    时间: 2013-11-6 01:21
满2进1,出2有余说明满2了。
作者: 王东    时间: 2013-11-6 01:27
用x表示十进制的x,假定x变成2进制后的数为三位abc,其中a为最高位,b为次高位,c为最低位。

则有 x = a*2^2 + b*2^1 + c*2^0= 4a+2b+c
所以
   x%2 = c,
   x/2 = a*2 + b
令x=x/2,则x=a*2+b
  x%2 = b,
  x/2 = a
令x=x/2,则x=a
  x%2 = a
  x/2 = 0
故每一步的余数为:
  c, b, a
把它们颠倒,就得到a,b,c

可以证明/看出每次除以2的余数正好是2进制的每一个数。
作者: 黄炳期    时间: 2013-11-6 08:40
帖子已重新分类,若仍有疑惑,可继续提问




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2