除二取余法怎么理解

1个回答

  • 以45为例

    45除以2得22余1

    22除以2得11余0

    11除以2得5余1

    5除以2得2余1

    2除以2得1余0

    1除以2得0余1

    结果是反过来的101101

    然后得出

    1•2^5加0•2^4加1•2^3加1•2^2加0•2^1加1•2^0=45

    比较十进制就可以理解每个位数的意义,2^X就相当于十进制中的10^X,因此只要得出上式中2^X前面的乘数就可以得到相对应的二进制数,做除二取余就是为了这个目的.

    可以看到在上面几个式子中下个式子的被除数都是上个式子的结果,因此到最后的一个式子1除以2得0余1这个1其实已经被5个2除过了,而前几个式子的余数也是,分别被X个2除过,因此它们其实就是2^X前面的乘数大概就是这样了.