質問: c言語のビット演算子について c言語のビット演算子に関する質問です。 ビット単位の演算とは、どのような場面で使用されているものなので しょうか? また、ビット単位の演算が行えることにどのようなメリットがあるの でしょうか? 基本的な質問で申し訳ございませんが、どなたかご回答頂けますか?
回答: ★過去質問より。 ・次の過去質問をちょっと見て下さい。 http://oshiete1.goo.ne.jp/qa3132505.html→『c言語での数字の花形表示』 この質問を読み回答no.1と回答no.6を見比べて下さい。 私の回答ではビット演算(and)を利用して花文字の表示をしています。 データの作り方にもよりますがビット演算などを上手く利用すると すっきりと処理できるようになります。 ・他にも経路ゲームで『壁=0』『道=1』の2つで構成されるマップがあるとします。 このマップが256×256の大きさだと char型で表現すると65,536バイト int型で表現すると262,144バイト のデータ量になります。※int型は32ビットとする。 迷路のマップが100ステージあると物凄いデータ量になります。 このような場合はchar型(int型)よりもビットで『壁』『道』を表現すれば 1マップは256×256の大きさでも32×32=1024バイトですみます。 データの圧縮にもなります。 ・このデータを読み取るときにはビット演算を駆使すれば迷路パターンを読み取れます。 このように工夫次第でいろいろと活用できるのです。 ポインタも使い次第では便利ですので。同じことです。