0

intをbinaryに変換してから、binaryに対してビット演算を実行しようとしています。

私の現在の方法は、intを取り、それを呼び出すto_s(2)ことですが、その後、バイナリ文字列が残ります。

私が何をすべきかについて何かアドバイスはありますか?

4

2 に答える 2

6

単純な整数は、ほぼすべての主要なプログラミング言語(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番目の答えのようです。)

于 2013-02-24T17:42:40.410 に答える
0

the_number.to_s(2).split('').map { |x| x.to_i }#数値をバイナリ配列に変換します

于 2013-02-24T17:47:02.513 に答える