私は1101 0010を格納する変数Aを持っています。しかし、最初の5ビットを別の変数Bにコピーしたいだけです。また、別の変数のビットを変数Bに連結したいと考えています。 基本的にA = 1101 0010ならばB = 11010(ちょうどAから最初の5ビットを取る) とC = 1101 0111(Bの既存のビットに111を追加)ある変数の数ビットを別の変数にコピー
これはPythonでどのように実装するのですか?
私は1101 0010を格納する変数Aを持っています。しかし、最初の5ビットを別の変数Bにコピーしたいだけです。また、別の変数のビットを変数Bに連結したいと考えています。 基本的にA = 1101 0010ならばB = 11010(ちょうどAから最初の5ビットを取る) とC = 1101 0111(Bの既存のビットに111を追加)ある変数の数ビットを別の変数にコピー
これはPythonでどのように実装するのですか?
としてあなたはそれを行うことができます:これは非常に明確ではありません
>>> a=int('11010010', 2)
>>> temp=int('11111000', 2)
>>> b=(a&temp)
>>> c=int('11010111', 2)
>>> temp1=c&int('00000111', 2)
>>> b=b|temp1
>>> b
215
>>> bin(b)
'0b11010111'
FWIWでは、整数リテラルを2進表記で指定することができます(例: '0b11010010')。 –
おっと、それを知っていませんでした。ちょうどこの質問のために初めて使用しました。ありがとう。:) – shiva
。下位3ビットを111などに置き換えたいのですか? –
あなたが持っているコードを投稿できますか? –