我正在尝试将 int 转换为二进制,然后对二进制执行按位运算。
我目前的方法是获取 int,调用to_s(2)
它,但是我留下了一个二进制字符串。
关于我应该做什么的任何建议?
在几乎所有主要的编程语言(包括 Ruby)中,简单整数都以二进制形式存储。因此,您可以对整数本身进行按位运算:
>> 6 | 5 # bitwise or
=> 7
>> 6 & 5 # bitwise and
=> 4
>> 6 ^ 5 # bitwise xor
=> 3
>> 6 >> 2 # right shift
=> 1
>> 6 << 2 # left shift
=> 24
(编辑:这似乎是我的第 1000个答案。)
the_number.to_s(2).split('').map { |x| x.to_i }
# 将数字转换为二进制数组