• ベストアンサー

&について

こんにちは cを勉強しています 今使っているのは、H8 3048のcです スイッチを押したら進むように作られているのですが (PBの1番ポートにスイッチがある) サンプルプログラムに sw = PBDR; sw = &=0x1 (うろ覚えなので少し変かもしれません) となっていました この&= とはどういう意味なんでしょうか? よくわからないので教えてください よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • foofoo0
  • ベストアンサー率42% (39/92)
回答No.2

たぶん、↓こうだと思います。 sw = PBDR; sw &= 0x01; PBDRは、1番ポートの値を参照するように定義されているのでしょう。 &はビット演算でANDをおこなう演算子で、変数swに1番ポートの値を代入した後に、最下位ビット以外を全て0にする処理となります。 例えば、1番ポートの値が0x83だった場合、0x01とANDされると0x01となります。  1000 0011 & 0000 0001 -----------  0000 0001

kaiketugoo
質問者

お礼

有難うございます! よくわかりました。 これでやっど次に進めます。 本当に有難うございました

その他の回答 (1)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

> この&= とはどういう意味なんでしょうか? a &= b; と書けば、 a = a & b; の意味になります。

kaiketugoo
質問者

お礼

有難うございます ++みたいに略されたっぽいですね。

関連するQ&A