黑马程序员技术交流社区

标题: 2*8的问题 [打印本页]

作者: Java_AA    时间: 2014-3-28 11:12
标题: 2*8的问题
基础测试中用最有效率的方法算出 2 乘以 8 等於几? ,还有有点迷糊
作者: osully    时间: 2014-3-28 11:20
二进制 左移右移的问题!

实际上现在电脑相当牛B,这种计算根本提高不了什么效率!   不过确实理论左移右移最快!
作者: H-Deka    时间: 2014-3-28 11:21
因为将一个数左移 n 位,就相当于乘以了 2 的 n 次方,那么,一个数乘以 8 只要将其左移 3 位
即可,而位运算 cpu 直接支持的,效率最高,所以,2 乘以 8 等於几的最效率的方法是 2 << 3
作者: Saner    时间: 2014-3-28 13:06
建议你看一下java基础视频毕向东老师第二天关于位运算的那一课,里面有图文说明
2的二进制是在32位存储器里面是   0000 0000 0000 0010
                     左移三位后变为              0000 0000 0001 0000     也就是16
作者: 何伟超    时间: 2014-3-28 13:13
2<<<3最快捷的方法!
作者: zms2100    时间: 2014-3-28 14:49
传说这是C语言时代,C语言程序猿最喜欢考的问题,答案同LS们,就是考(移位)位运算。
作者: 橸瑩膤漃寞林    时间: 2014-3-28 15:56
2<<3,左移就是乘以2移动的位数次幂,也就是2*8,这是比较有效率的算法。




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