回答終了
これはビットマスク処理と呼ばれるものです。 例えば、Unicode文字(主に1文字16ビット)をC言語のchar型(8ビット)に代入したい時なんかに使えます。 ひらがなの「あ」(U+3042)がUTF-16でエンコードされている時に、char型変数2つに8ビットずつ格納したければ、次のようにします。 (1): 「あ」を表す0x3042を2進法で表す _( 3)( 0) ( 4)( 2) →00110000 01000010 (2): 下位8ビット(0x42)だけ取り出したいので、(1)と☆の値のANDを取る 00110000 01000010♡ 00000000 11111111☆ AND------------------------ 00000000 01000010 (☆側のビットが0なら♡側のビットが何であってもANDの結果は0、 ☆側のビットが1ならANDの結果は♡側のビットと同じになる) (3): ☆の値を16進法で表すと… 00000000 11111111 ( 0)( 0) ( F)( F) ∴マスク値は00FF (4): 今度は上位8ビットを取り出したいので、0x3042を右に8ビットシフトする(0x42部分は(2)で取り出したので捨ててよい) ( 3)( 0) ( 4)( 2) 00110000 01000010 ↓ ( 0)( 0) ( 3)( 0) 00000000 00110000 (5): (2)と同じ 00000000 00110000 00000000 11111111☆ AND------------------------ 00000000 00110000 本問では☆を聞かれているので、00FFが正解です。
< 質問に関する求人 >
情報処理検定(東京都)この条件の求人をもっと見る
求人の検索結果を見る
< いつもと違うしごとも見てみませんか? >
覆面調査に関する求人(東京都)この条件の求人をもっと見る