• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:排他的論理和の問題)

排他的論理和の問題

banakonaの回答

  • ベストアンサー
  • banakona
  • ベストアンサー率45% (222/489)
回答No.1

「00001111」の出所は,問題文の「任意の8ビットのデータXと、8ビットのデータ00001111をビット毎に・・・」の「00001111」です。 分かりやすくするために、問題にある排他的論理和の表をタテ横ぎゃくにすると、 A | 0 0 1 1 B | 0 1 0 1 C | 0 1 1 0 AとBの排他的論理和の結果がCとなることを示しています。 Bが0であれば、Aのビットはそのままで、 Bが0であれば、Aのビットはそのままで、が反転(0は1に、1は0になる)することを示しています。 これを8ビット(8桁)の「各桁」について計算します。 例えば、データXが00110011なら、これと「00001111」の排他的論理和を計算すると、 「0000」となっている上位はそのままなので「1100」となり、「1111」となっている下位は反転するので「0011」となり、全体は、  11000011 になります。 もう一つ計算すると、データXが01011001なら上位「0101」がそのまま、下位「1001」が反転するので「0110」で、  01010110 となります。 (補足)上記表は、Aを基にして「Aが1のときBが反転し、Aが0のときBはそのまま」ということもできます。 (蛇足?)【解説】の「データBのビット列は、00001111ですから、」という表現が悪いのかも。AとかBとかいうから「何がデータB?」という混乱が生じます。 私ならサラっと「00001111との排他的論理和なので」と言います。

miico-h
質問者

お礼

ありがとうございます。 例題風に解説してくださり、とても分かりやすかったです。

関連するQ&A

  • どなたか、この問題を解いて教えてください。。

    基本情報技術者試験の勉強中なのですが、この例題が、解説を読んでもわかりません。項目は論理演算です。どなたか、教えていただけないでしょうか? 【問題】 8ビットのデータの下位2ビットを変化させずに、上位6ビットのすべてを反転させる論理演算はどれか? ア 16進数03と排他的論理和をとる イ 16進数03と論理和をとる ウ 16進数FCと排他的論理和をとる エ 16進数FCと論理和をとる 【答え:ウ】 【解説】16進数FCは11111100です。排他的論理和を取ると、上位6ビットは反転され、下位2ビットはそのままとりだせます。 と、書いてあります。2進数に変換するまではわかるのですが、排他的論理和を取るというのは、どういうことなのでしょうか? すみませんが、宜しくお願いします。

  • (論理咳,論理和,排他的論理和)基本情報処理の問題

    今基本情報処理の勉強をしているのですが、 論理咳,論理和,排他的論理和の問題で、いまいちわからない部分がありますので教えてください。 【問題】 ビット数が等しい任意のビット列aとbに対して、等式=bと同じことを表すものはどれか。  ここで、AND,OR,XORはそれぞれ,ビットごとの論理咳,論理和,排他的論理和を表す。 ア a AND b = 00…0  イ a OR b = 11…1 ウ a XOR b = 00…0 エ a XOR b = 11…1 解答  「ウ a XOR b = 00…0」 となっているのですが  この質問に出ている 「00…0」 or 「11…1」は何を表しているのでしょうか?    「00…0」 = 全てのビットが0になる  「11…1」 = 全てのビットが1になる  という意味を指しているのでしょうか?

  • 排他的論理和について

    PHPで排他的論理和を使っているのですが、サーバによって挙動が異なっています。 $a= -5748825183 $b= 160952 の時に、 $a^$b とすると、基本的に結果は「-1454008551」になっているようですが、いくつかのサーバは「-2147322696」になってしまいます。 なぜこのような挙動になるのでしょうか? 何かPHPやサーバの設定で、注意しなければならいところがあるのでしょうか? 非常に訳のわからない挙動になっており、アドバイスをいただければと思います。 色々調べましたが、PHPでビット演算子を使うことはあまりない(?)ようで、基本的な情報しか見つけられませんでした。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 排他的論理和について

    論理式がY=A⊕Bで、 A=0、B=0のときってYの値はなぜ偽なのに0になるのでしょうか;;

  • 排他的論理和

    排他的論理和を2回演算すると、元に戻ることを下記の例で確認しなさい。 回答は下記の<2進数>と<16進数>の部分を書き換えなさい。 (1)平文と鍵から暗号文を作りなさい 【平文】  ABC  <16進数> <2進数> 【鍵】   XYZ  <16進数> <2進数>  ---------------------------- 【暗号文】    <16進数> <2進数> (2)暗号文と鍵から平文が復元できることを示しなさい 【暗号文】    <2進数>  <16進数> 【鍵】   XYZ  <2進数>  <16進数> ---------------------------- 【平文】  ABC  <2進数>  <16進数> ヒント:(1)は、平文と鍵を16進数と2進数に書き直し、2進数で排他的論理和を計算し、それを16進数に直せば暗号文を定義できる。平文、鍵、暗号文はどれも16進数6桁になる。 (2)も同様に暗号文と鍵から平文を生成する。 最後に(1)の平文と(2)の平分を比較してみなさい。違っていればもう一度見直しなさい。 どなたか教えてください。 さっぱりわからないです。

  • 論理演算

    8桁の2進数10110111の最上位(最左端)のビットだけを0にするには、8桁の2進数01111111と、どのような論理演算を行えばよいか。 選択肢 (1)論理積 (2)論理和 (3)否定論理積 (4)否定論理和 という問題の答えと、なぜそうなるかを教えて下さる方いませんか。 よろしくお願いします。

  • 基本情報技術者試験 論理演算に関する問題

     最上位をパリティビットとする8ビット符号において,パリティビット以外の下位7ビットを得るためのビット演算はどれか。 ア 16進数0FとのANDをとる。 イ 16進数0FとのORをとる。 ウ 16進数7FとのANDをとる。 エ 16進数FFとのXOR(排他的論理和)をとる。 (基本情報技術者試験 平成18年度春季午前 問6) この問題の解説お願いします。パリティビットって何ですか。いまいちよく分かりません。

  • 真理値表→論理式

    3桁の2進数X = (x2, x1, x0)を入力し、2倍して1を足し出力する 論理回路があります。 ここで出力をY= (y3, y2, y1, y0)とし、x2,y3を最上位ビット x0, y0を最下位ビットとします。 これは、真理値表は x2 x1 x0  y3 y2 y1 y0 0  0  0   0  0  0  0 0  0  1   0  0  1  1 0  1  0   0  1  0  1 0  1  1   0  1  1  1 1  0  0   1  0  0  1 1  0  1   1  0  1  1 1  1  0   1  1  0  1 1  1  1   1  1  1  1 となると思うんです。ここから、論理式の作り方を教えていただけないでしょうか? 出来れば、最簡形であるとうれしいです。 よろしくお願いします。

  • 排他的論理和のみを用いて回路を表現

    排他的論理和回路(X-OR)のみを用いて、他の回路(AND、OR、NOTなど)を表現するという問題を解いています。 ブール代数からの変換等を用いてX-ORの形になるように色々と変換していますが、変換の通りだけでも種類がたくさんあるので、どうもうまくいきません。 類似問題として、NAND回路、NOR回路への変換は、教科書に記載されており、否定要素もあったのですぐにNOTから変換でき、AND、ORへつなげることができました。 せめてNOTの変換だけでもわかれば、AND、ORもすぐに理解できそうなのですが、X-ORのみの構成では、入力が0のときに1が出力される組み合わせが思いつきません。 ヒント、アドバイス等ありましたらよろしくお願いします。

  • 論理式の証明がどうしてもできません。

    A xor B xor AB=A+Bという排他的論理和の式の証明がどうしてもできません。どなたか、教えてください。