2016-05-08 12 views
-2

バイナリ形式のbin()intの間で、ビット単位で&の演算を実行することが困難です。この目標を達成するにはどうしたらいいですか?バイナリ番号(0b1100)とbin(4)の操作方法と操作方法は?

+2

あなたは、文字列の上にそれを行うにしようとするだろう、なぜ?ちょうど元の整数でそれをやりなさい。 – kindall

+2

ビット演算*と*演算を意味しますか? – Paul

答えて

1

ビット単位のAND演算(&演算子を使用)を2つの整数で実行しようとすると、2進表現の文字列に変換する必要はありません。

は、この例を見てみましょう:

x = 4 # 0b100 
y = 5 # 0b101 
print(x & y) # => 4, which is 0b100, because 0b100 & 0b101 = 0b100 
+0

愚かな私。私はそれを思い出してくれてありがとう。バイナリ形式に変換してビット単位で操作していましたが、あなたの方が良い方法です。 –

+0

@ShashankVermaビット単位の操作は、2進数でのみ行うことができます。しかし、すべての整数はバイナリでネイティブに格納されるため、バイナリ数値として直接操作することができます。つまり、数値システムは互換性があります。 –