ビット操作とマスクパターン

ビットを反転させる

排他的論理和(どっちかが1の時に1になる)を用いることでビットを反転させることができる

  1. 反転させたい元のビット列に対して、「ビットを反転させたい位置に1を入れたビット列(マスクパターン)」を用意する
  2. 2つのビット列で排他的論理和をとると、元のビット列を反転させた結果が得られる

特定のビットを取り出す

ビットの取り出しには論理積(どっちも1のときは1になる)を用いる

  1. 取り出したい元のビット列に対して、「ビットを取り出したい位置に1を入れたビット列」をマスクパターンとして用意する
  2. 2つのビット列で論理積を取ると、元のビット列からマスクパターンで指定した位置のビットだけで取り出される

 

 

タイトルとURLをコピーしました