问一个 ruby 的问题

2019-08-28 21:12:18 +08:00
 Kronos

ruby 中的>>什么意思? 2880000000 >> 10 计算的结果是多少? 之前也没有接触过 ruby,今天看了一个 ruby 处理数据的脚本,前面看得略懂,到>>这就卡住了 老哥们,帮帮忙解释一下:)

18543 次点击
所在节点    Ruby
9 条回复
TangMonk
2019-08-28 21:39:05 +08:00
noqwerty
2019-08-28 21:44:39 +08:00
借楼问一下哪些方向会用到很多 bitwise operation ?只认识一个给飞机写固件的朋友会面对这个
lululau
2019-08-28 21:47:35 +08:00
所以只有 Ruby 里的按位 shift 是这样写的喽? C, Java 什么的是怎么写的?
agagega
2019-08-28 21:49:44 +08:00
@noqwerty 如果不是真的要用二进制位表达语义(比如做 bitmask ),其实没必要用这些运算来做优化,编译器知道什么是最合适的。
agagega
2019-08-28 21:51:21 +08:00
就是向右移动 10 个二进制位,作用就是除以 2 的 10 次方。
TangMonk
2019-08-28 21:53:51 +08:00
noqwerty
2019-08-28 22:02:42 +08:00
@agagega #4 是啊我好像只有刷算法题才会用到,平时工作从来没用到过
noqwerty
2019-08-28 22:03:42 +08:00
@TangMonk #6 之前也看过这个,还是离我的领域太远了很多都看不懂,哈哈
doraemon0711
2019-09-28 06:59:03 +08:00
@lululau java 一样的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/596019

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX