ruby 中的>>什么意思? 2880000000 >> 10 计算的结果是多少? 之前也没有接触过 ruby,今天看了一个 ruby 处理数据的脚本,前面看得略懂,到>>这就卡住了 老哥们,帮帮忙解释一下:)
![]() | 1 TangMonk 2019-08-28 21:39:05 +08:00 ![]() Ruby bitwise operator: https://medium.com/rubycademy/ruby-bitwise-operators-da57763fa368 |
![]() | 2 noqwerty 2019-08-28 21:44:39 +08:00 via Android 借楼问一下哪些方向会用到很多 bitwise operation ?只认识一个给飞机写固件的朋友会面对这个 |
![]() | 3 lululau 2019-08-28 21:47:35 +08:00 所以只有 Ruby 里的按位 shift 是这样写的喽? C, Java 什么的是怎么写的? |
![]() | 4 agagega 2019-08-28 21:49:44 +08:00 via iPhone @noqwerty 如果不是真的要用二进制位表达语义(比如做 bitmask ),其实没必要用这些运算来做优化,编译器知道什么是最合适的。 |
![]() | 5 agagega 2019-08-28 21:51:21 +08:00 via iPhone ![]() 就是向右移动 10 个二进制位,作用就是除以 2 的 10 次方。 |
![]() | 6 TangMonk 2019-08-28 21:53:51 +08:00 |
![]() | 9 doraemon0711 2019-09-28 06:59:03 +08:00 via iPhone @lululau java 一样的 |