缘起:上课学习了二进制,之前其实已经有所了解了。所以上课的时候就可以比别人多思考一点,思考深一点。(这也说明了学习预习的重要性)
关于二进制和十进制的转换我的快速算法
比如说:45D——>32+13=32+8+5=32+8+4+1 == 100000+1000+100+1=101101B只需要记住4=100,8=1000,16=10000B(以此类推)
相信大家也看出来了,我是通过将十进制的数字拆分成2的n次方来表示,由于2的n次方形式规律明显,所以能够较快转换。这种方法对于小数字很快,基本能够口算,但是对大的数字还是得用传统的方法。
传统方法也讲一下:
就是把每一位的位值(position value)找到。 比如说:245D =210^2+410^1+5*10^0 那么二进制的位值就是2的n次方; 举个例子:19D-->19/2=9...1 ——>9/2=4...1——>4/2=2...0——>2/2=1...0 ==10011B 我认为这样解的原因是二进制逢二进一,所以要除以二,其实式子(图片)从左往右看就是不断乘2的过程,符合二进制的定义。
举一反三,那么八进制就是把十进制表示的数字不断除8,最后从末往前看。
至于小数部分
emm 可以到百度上查找一下,和整数部分不太一样,自己思考一下吧。
总结
每天学习的很开心,这就是大学吧,虽然和高三一样忙,但是我知道自己为什么忙碌,我没有辜负每一天。