o*g
4 楼
看来你不知道啥是位移
比如一个byte: 0000 0001
左移一位就是0000 0010
位移运算老快了。所以有的需要*4之类的就可以左移两位,速度上快N倍。
计算机无非是用0和1来表示你定义的东西,失去定义就剩一些0和1了,没意义。
比如定义一个byte的最右一位表示有无太阳,1表示有,0表示没有
这个byte的右数第二位表示有无月亮,1表示有,0表示没有
那0000 0001就表示有太阳没有月亮。左移一位就变成0000 0010,变成有月亮没有太阳
了。
对了,对位移操作的变量更应该关心其长度。
比如it是int可能是32位的,64位的或128位的。(也可能是其他长度的)
要是128位的,那结果就不是0了
【在 L*******g 的大作中提到】
: 谢谢。it是int型,这个移位的效果/用途是什么?
比如一个byte: 0000 0001
左移一位就是0000 0010
位移运算老快了。所以有的需要*4之类的就可以左移两位,速度上快N倍。
计算机无非是用0和1来表示你定义的东西,失去定义就剩一些0和1了,没意义。
比如定义一个byte的最右一位表示有无太阳,1表示有,0表示没有
这个byte的右数第二位表示有无月亮,1表示有,0表示没有
那0000 0001就表示有太阳没有月亮。左移一位就变成0000 0010,变成有月亮没有太阳
了。
对了,对位移操作的变量更应该关心其长度。
比如it是int可能是32位的,64位的或128位的。(也可能是其他长度的)
要是128位的,那结果就不是0了
【在 L*******g 的大作中提到】
: 谢谢。it是int型,这个移位的效果/用途是什么?
O*d
6 楼
left shift operation. 楼主需要复习一下二进制。
相关阅读
说完了AI,有没有人愿意讨论下ML?其实说穿了, java就是一种可以让初中生廉价劳动力写程序的语言大部份 design pattern 是不需要的求教: JBoss 怎么config MDB consumer queue?有哪个WEB framework 同时支持PHTHON和JAVA后端?nodejs到底有啥好的?大牛给解释解释?水母那个大坑太搞笑了RE: functional programming? English grammar errorNode 1.5 times better than Java一个SAS sql的问题mac os x的/boot/ 文件夹去哪里了? (转载)cassandra db designPython和perl都属于那种很难精通的语言QW Home Automation 1.8.13.1101 released各位大牛编程用啥显示器?DigitalOcean $50 creditNosql is not for everyone.在哪写技术性博客OOP里面的Object其实是actorjulia有前途吗? (转载)